Institutional Vault Release v3.1.0
Versions
Institutional Vault: v3.1.0
Policy Nodes: v9.2.0
NATS: v3.1.0
configmap-init: v0.1.0
Updates
- New Audit log CSV export produces a simplified flat-column human-readable format safe for Excel and Google Sheets. The forensics raw-JSON format is available via the format=forensics-zip query parameter
- Audit-log settings page now displays recent audit entries inline.
- Approvals now include mint and burn outputs with resolved instrument identifiers in Canton transaction intents.
- Approvals now include ERC-20 decoded outputs (recipient and amount) in transaction intents for improved approver visibility.
- CAIP-19 identifiers are included in /api/vaults account responses.
- Client-side search bars added to the accounts list, account assets tab, assets list, and asset detail accounts tab.
- Vault and CWP OpenAPI specifications are combined into a single spec.
- /api/v2/transfers accepts a caip19 field in place of the integer assetID.
- Group rename supported in the wallet UI under Settings > Groups with validation and CWP operation submission.
- Solana cold wallet displays a Transactions per Batch modal showing the current allowed batch size with an option to increase it.
- Legacy policy v1 UI references removed and the confirmation toast defaults to off when policy data is unavailable.
- Read-only POST endpoints under /api/cwp (operations/search, canton/getKeys, canton/getTransaction) no longer write audit rows. The audit log is now scoped to state-changing operations only.
- Azure Key Vault secret writes now include a contentType attribute (application/json or text/plain) to satisfy Azure Policy requirements.
- Policy Nodes expose a /ready health endpoint alongside the existing /live endpoint.
- Support for UnregisterToken and UnregisterChain operations.
- Wallet listener backfills local database rows when registerUser, resetUser, createAccount, updateGroup, and renameGroup operations are issued via the direct CWP HTTP interface.
Fixes
- WalletConnect sessions are now correctly displayed in the wallet UI for EVM chains.
- Wallet startup no longer crashes when a registered blockchain protocol is missing from the internal L1 asset map.
- NATS authentication failure resolved when adding a new EVM tracker to an existing deployment where the tracker certificate was signed by a different intermediate CA than the one trusted by the NATS server.
- NATS authentication failure resolved for existing services whose client certificates were not reissued after an intermediate CA rotation.
- Supported chain cache now expires periodically instead of persisting indefinitely, preventing stale chain data after registration changes.
- Configurator no_auth_token flag no longer removes UTXO service and Ubiquity configuration blocks from generated wallet config.
- Policy Nodes fixed rate lookup is now checked before calling the external pricing service, avoiding unnecessary network calls when a fixed rate is configured.
- Policy Nodes approval fetch corrected to prevent missed pending approvals.
Breaking Changes
- GET /api/assets/{protocol}/{network}/{symbol} replaced by GET /api/assets/{caip19}. URL-encode the CAIP-19 value in the path. See the bundled CAIP-19 migration guide.
- /api/v2/accounts and /api/v2/assets endpoints removed. Use /api/vaults and /api/assets instead.