• Documentation
    • About ​ValidMind
    • Get Started
    • Guides
    • Support
    • Releases

    • ValidMind Library
    • Python API
    • Public REST API

    • Training Courses
  • Log In
  1. 25.10 Release notes
  • Installing ​ValidMind
  • Release notes
  • ​ValidMind systems access
  • Troubleshooting and support

  • Deployment
  • 1 — Prepare your environment
  • 2 — Pull the container images
  • 3 — Pull the Helm chart
  • 4 — Configure your Helm chart
  • 5 — Configure LiteLLM
  • 6 — Install or upgrade via Helm chart
  • 7 — Complete the initial setup
  • 8 — Verify your installation

  • Authentication
  • Configuring authentication
  • Configure local authentication
  • Configure OIDC integration
  • Authenticate with Entra
    • Configure frontend environment variables for Entra
    • Entra manifest JWT configuration
    • Configure single sign-on (SSO)
  • Supporting multiple OIDC providers

  • Administering
  • Operating ​ValidMind
  • Migrate to vmconfig.toml (26.02)
  • View ValidMind configuration
  • Configure AI model settings
  • Monitoring your deployment
  • Configuring email services
    • Configure email provider
    • Customize email templates

  • Reference
  • ​ValidMind Admin REST API
  • ValidMind configuration

  • Security advisories
  • VM-SA-2026-01
  • VM-SA-2026-02

On this page

  • Highlights
    • Document checker
    • Findings
    • Workflows
    • Public REST API
  • Backend
    • Enhancements
      • Allow updating model and custom field values with arbitrary values
      • Enable custom test result description structure
    • Bug fixes
      • Fix findings export issue
  • Frontend
    • Enhancements
      • Add toggle for OIDC group and role sync at organization level
      • Update permission checks for managing model users
      • Provide keys for items in block library
      • Add template deletion with confirmation modal and dependency checks
      • Support custom stakeholder filters
      • Display explicit changed values in model activity feed
      • Make model ID and findings ID viewable and exportable
    • Bug fixes
      • Metadata preview issue fixed
      • CSV export fixed for stakeholder types
  • Edit this page
  • Report an issue

25.10 Release notes

cmvm
25.10
release
Published

October 7, 2025

Highlights

Document checker

This release adds bulk upload of assessment questions in the document checker and introduces audit and status tracking for regulations assessments and questions with versioning and updates the results heading to "Observation".

Check documentation for compliance

Enable bulk upload of compliance check questions

This update introduces a new bulk upload feature for the document checker. You can now upload multiple questions at once, making it easier to create assessment questions in a single operation.

The feature works with the existing single-question creation process and includes improved audit trails and automatic version management.

Customize Virtual Document Validator

A screenshot of the bulk upload feature for the document checker.

Bulk upload feature

Add audit fields for tracking changes in regulations and assessments for the document checker

We have introduced a comprehensive audit trail and status tracking to the document checker. You can now track who created or updated regulations, assessment versions, and questions, along with their current status. This enhancement, featuring audit fields to monitor changes across several components, enables better compliance oversight and administrative control.

A screenshot of the audit fields in the document checker.

Audit fields

Update label for document checker results heading

The document checker now uses the term "Observation" instead of "Finding" for improved clarity.

A screenshot of the document checker results heading that has been is updated from 'Finding' to 'Observation'.

New Observation label

Findings

This release enhances findings with support for workflows, richer formula capabilities (including finding type and model data), improved CSV exports with selectable columns, a redesigned findings creation process with configurable field, and a new option to skip email notifications.

Working with model findings

Support for findings in workflows

You can now use findings in workflows. Previously, you could already use workflows to transition your models into their appropriate next stages throughout their lifecycles. With this enhancement, you can now create similar workflows for findings that can be triggered manually or when a finding is created. For example, you might create a workflow that runs automatically when a policy exception finding is generated.

A screenshot that shows how to add a new workflow for findings with Settings > Workflows > + Add Finding Workflow.

Expose finding type in formulas

A screenshot of the finding type in formulas.

With this update, you can now access finding type information in custom field formulas using the new finding_type parameter. This allows you to create dynamic calculations and conditional logic based on whether a finding is categorized as a "Validation Issue", "Policy Exception", or "Model Limitation".

Manage model finding fields

Example uses:

  • Calculate different risk scores based on finding type.
  • Generate dynamic titles and descriptions.
  • Set different due dates or priorities by finding category.
  • Create type-specific business logic in formulas.

Simple dot notation:

  • finding_type.tag - Technical tag (e.g., "VALIDATION_ISSUE").
  • finding_type.name - Human-readable name (e.g., "Validation Issue").

This feature is automatically available in all finding custom field formulas with no configuration required.

Example usage

Different calculations based on finding type:

if finding_type.tag == "VALIDATION_ISSUE":
    return severity_score * 2.5
elif finding_type.tag == "POLICY_EXCEPTION":
    return severity_score * 1.0
else:
    return severity_score * 1.8

Calculate due dates based on finding type:

base_days = 30
if finding_type.tag == "VALIDATION_ISSUE":
    urgency_multiplier = 0.5  # 15 days
elif finding_type.tag == "MODEL_LIMITATION":
    urgency_multiplier = 2.0  # 60 days
else:
    urgency_multiplier = 1.0  # 30 days

return base_days * urgency_multiplier

Combine finding type with custom fields and parent model data:

risk_factor = custom_field_risk_score or 1.0
model_criticality = parent_model_params.get("criticality_level", "medium")

if finding_type.tag == "VALIDATION_ISSUE" and model_criticality == "high":
    return risk_factor * 3.0
else:
    return risk_factor * 1.5

Add formula support for findings

This update allows you to use formula fields in findings to access custom field values from their parent inventory model using the params.model syntax. This enhancement enables more complex calculations by integrating both finding and model data.

Select columns when exporting findings

You can now export findings to CSV with the option to select specific columns, including custom fields. Custom fields are automatically filtered to show only those relevant to the chosen finding type.

Enhance CSV export for findings with custom fields

You can now export findings to CSV format, including all custom fields defined in your organization's finding schema, along with the standard finding information. Custom field values are formatted and labeled according to your schema configuration.

Add configurable registration fields

This update enhances the findings module with clearer field labels and an improved creation process.

  • Clearer field labels: The finding interface now uses intuitive terms like "Creator" for the person who created the finding and "Assignee" for the person responsible for remediation.
  • Enhanced finding creation: The finding creation form has been redesigned with a multi-step interface and now supports custom fields.

Allow skipping email notifications when creating findings or models

You can now opt to skip email notifications when creating findings or models using the public API by including the new optional parameter, skip_email_notification.

Workflows

This release introduces major workflow enhancements, including support for findings in workflows, editor improvements, multi-stakeholder approval logic with new review fields, time-delta wait steps, and custom-field filtering by workflow usage.

Working with workflows

Support for findings in workflows

You can now use findings in workflows. For example, you can create your own workflow that is triggered when a policy exception finding is created.

Finding highlights

Enhanced workflow editor

This update enhances the workflow editor with several new features and improvements, including undo and redo functions that let you easily revert or reapply changes, tidy and reset layout options that help organise your workflow visually, and a save button that appears only when there are changes to save.

A complex flowchart diagram is displayed on a white background, illustrating a hierarchical structure with nodes and connecting lines. The nodes are color-coded in shades of blue, green, red, and purple, each labeled with text indicating different stages or components, though the specific text is not legible. On the left side, a vertical sidebar menu is visible with various icons and labels, suggesting navigation options. At the top, there is a header bar containing the title Model Identification with additional buttons labeled Edit and Share. The overall layout suggests a detailed process or system map with multiple branching paths and connections.

  • The NodesBar component now uses ArrowsRightLeftIcon and ArrowRightCircleIcon instead of SignalIcon

  • Auto layout functionality in WorkflowCanvas uses dagre for improved node positioning

  • The zoomSelector threshold in NodeBox is updated to 0.7 for better responsiveness

  • Various node components now use the new zoomSelector for visibility control

Approval workflows that support multiple stakeholders and review fields

This update allows you to specify multiple conditions, including various voter roles. The voter threshold in the approval step configuration has been deprecated.

The voting process now follows these rules:

  • The approval step can consist of multiple "groups" connected by an AND operator.

  • The voting result will be approved only if all groups resolve to approved.

  • If at least one group is rejected, the voting result will be recorded as rejected.

  • Voting will continue until all groups are resolved.

  • A group's result is determined by the first vote that meets the group's condition.

  • Once a group's result is recorded, the remaining users qualified to vote in that group will be set to "No Vote, Not Required".

A configuration interface titled Configure Approval Step displays settings for an approval group. The section includes three rules with dropdown menus for Model Stakeholder and User Roles, each set to specific values like MGO Manager 1 and Customer Admin, with Remove rule buttons next to each. Below, a slider labeled Threshold is set to 100%, indicating the percentage of approvers required. The Fields to Review section lists aiType and mgoCommentsAmr with an option to add more fields. At the bottom, an Approval Message section contains a text field with the value ApprovalINN.

Additionally, you can now select specific fields to review when configuring an approval step in a workflow. These fields will be displayed to the voter during the approval step action.

Add time delta from field in wait step

You can now use the "Time Delta from Field" wait type in workflow steps. This feature lets you schedule workflow execution relative to custom field dates. Configure wait steps to trigger a specific time before or after dates in model fields, such as "wait 7 days before deadline" or "wait 2 hours after start_date". This enhancement supports more advanced workflow scheduling scenarios like deadline reminders and follow-up actions, offering extended functionality and validations for wait nodes in the workflow system.

Add filtering for custom fields by workflow usage

You can now filter custom fields by the workflows that use them, enhancing filtering capabilities. This update supports workflow usage tracking across various parts of the application, providing a more streamlined and efficient experience.

Filtering for custom fields by usage

Filtering for custom fields by usage

Public REST API

This release introduces new public API endpoints to list findings with filters, retrieve a single finding, manage findings schemas and payloads, fetch finding severities, and get or update the inventory model schema.

ValidMind Public REST API Reference

A web page displaying the landing page of the new ValidMind public REST API reference. The same content can be found using the link to the API reference in this section.

ValidMind Public API reference

New API endpoint to list findings with filters

You can now access all findings through a new public API. This update introduces a flexible filtering method, get_findings_with_filters, allowing you to efficiently retrieve findings based on specific criteria. Additionally, several supporting helper functions have been added to enhance your experience.

New API endpoint to retrieve a single finding

We have introduced a new public API endpoint that allows you to retrieve a single finding. This enhancement simplifies accessing specific findings, making it easier to integrate with your existing systems.

New API endpoint for findings schemas and payload updates

This update improves how you manage data by introducing a public API for handling custom fields in findings. This enhancement allows for more flexible and detailed data management across both internal and public APIs.

New API endpoint to fetch finding severities

You now have access to a new public endpoint to fetch finding severities, enhancing your ability to manage and assess organizational risks effectively.

New API endpoints to get and update inventory model schema

We have introduced enhancements to the inventory model schema functionality. You can now use the following endpoints:

  • GET organizations inventory model schema: Retrieve the current inventory model schema for organizations.
  • PUT organizations inventory model schema: Add, delete, or update custom fields within the inventory model schema.

Backend

Enhancements

Allow updating model and custom field values with arbitrary values

This update adds a strict parameter to several methods, providing a flexible validation mechanism for custom fields. You can now use a public API to override model and custom field value validation, allowing for greater control and customization in your workflows.

Enable custom test result description structure

This update improves how you generate test result descriptions by adding a new context parameter to run_test(). With this parameter, you can customize test descriptions using a dictionary with three optional keys:

  • test_description: Replace the default test documentation with content specific to your domain.
  • additional_context: Include business context, real-time information, or other relevant background details for analyzing test results.
  • instructions: Define the output formatting and style.

These enhancements give you full control over the creation of LLM-generated test descriptions. While the existing environment variable (VALIDMIND_LLM_DESCRIPTIONS_CONTEXT) is still supported for backward compatibility, the instructions parameter will take precedence if both are used. We recommend transitioning to this new parameter-based approach, as support for the environment variable will be phased out in future releases.

Bug fixes

Fix findings export issue

The findings export API now provides a consistent response format by correctly marshaling JSON responses according to the defined schema. This update ensures that when you retrieve findings by type, the data is accurately formatted and reliable.

Frontend

Enhancements

Add toggle for OIDC group and role sync at organization level

This update enhances organization settings by introducing a new tab under Settings > Configuration. As a Customer Admin, you can now update technical settings for your organization. You can manage OIDC (OpenID Connect) synchronization mappings. This allows you to associate groups and roles from claims with your organization's roles or groups. This feature is available when synchronization is enabled.

A screenshot of the new Configuration tab in the Settings page.

New Configuration tab

Update permission checks for managing model users

You can now manage user roles at the organization level, allowing you to add or remove model users within user groups. This update dynamically checks user roles and stakeholder type permissions to enable adding or deleting stakeholder users for a model.

Manage permissions

Provide keys for items in block library

The Block Library UI now displays unique keys for shared blocks, making it easy for you to copy and reference these keys when embedding blocks into templates. You can now use the new copy functionality, which includes user feedback, in both the Block Library modal and settings page.

Manage text block library

Add template deletion with confirmation modal and dependency checks

You can now delete ValidMind documentation templates with enhanced safeguards. When you attempt to delete a template, the system displays any models that depend on it and prevents deletion until these dependencies are resolved. The templates list also shows how many models use each template, providing better visibility into template usage.

Support custom stakeholder filters

You can now filter inventory models by custom stakeholder types within the model inventory API calls and related UI components. This update allows you to use any stakeholder type present in the database through the filter UI. Custom stakeholder filters appear dynamically based on available data and integrate seamlessly with existing filter functionality.

Display explicit changed values in model activity feed

The model inventory activity feed now displays clear before-and-after values when fields are updated. This enhancement allows you to easily track specific changes made to models.

Make model ID and findings ID viewable and exportable

We have enhanced multiple table components by adding new columns and improved sorting capabilities. These updates make data management more efficient and user-friendly.

A screenshot showing the Model ID column in the inventory.

Model ID column

Bug fixes

Metadata preview issue fixed

You can now see accurate metadata previews, as the issue with empty content has been fixed.

A webpage section displaying two main headings: Developer Evidence and Validator Evidence. Under Developer Evidence, there is a subheading labeled 5.1 Ongoing Monitoring Plan in blue, followed by a paragraph starting with To maintain the accuracy and reliability of the capital market models, it.... Below this, Validator Evidence contains a message stating It looks like you don’t have any test results logged as a Validator, followed by a clickable link in red text reading Click here to get started. The layout is simple with text aligned to the left and ample white space surrounding the elements.

CSV export fixed for stakeholder types

The CSV export for inventory models has been fixed. Now, only the stakeholder types you specifically request in the CSV columns are processed and exported.

  • ValidMind Logo
    ©
    Copyright 2026 ValidMind Inc.
    All Rights Reserved.
    Cookie preferences
    Legal
  • Get started
    • Development
    • Validation
    • Setup & admin
  • Guides
    • Access
    • Configuration
    • Integrations
    • Workflows
    • Inventory
    • Risk tiering
    • Documents & templates
    • Documentation
    • Validation
    • Reporting & auditing
    • Monitoring
    • Attestation
  • ValidMind Library
    • Quickstarts
    • Development tutorial
    • Validation tutorial
    • Run tests & test suites
    • Use library features
    • Code samples
    • Python API
    • Public REST API
  • Training
    • Learning paths
    • Courses
    • Videos
  • Support
    • Troubleshooting
    • FAQ
    • Get help
  • Edit this page
  • Report an issue
  • Community
    • GitHub
    • LinkedIn
    • Events
    • Blog