6.0 (Major Release)

Release Summary

Comprehensive Design Refresh

We've completely refreshed the overall look and feel of the Consoles to improve accessibility, consistency, and overall usability. The essential layout and functionality are effectively identical.

Example of the refreshed Space Dashboard

Example of the refreshed Space Dashboard

Example of the refreshed Kapp Dashboard

Example of the refreshed Kapp Dashboard

Replaced Ignite Dependency with RabbitMQ

The various components of the Kinetic Platform previously used the Ignite framework to communicate with each other. With this release, we've moved to RabbitMQ, a message-based solution that is purposefully built for communication. This change offers improved stability, performance, and flexibility for future features.

One of the key challenges of a distributed system is providing a method for the various components to communicate with each other. While Ignite could provide us with a communications mechanism, we determined over the course of many production installs that the platform caused issues in some customer environments, required frequent security patch updates, and significantly limited our potential future use cases and features due to its purpose-built build.

We've chosen to embed RabbitMQ into the Kinetic Platform so there’s no need for external service maintenance. This helps keep the management process simple and keeps the scope and performance of the queue focused its needed purpose within the Platform.

Improved Workflow Integration

Customer feedback and builder training have taught us that the workflow configuration process is one of the Platform's most confusing and error-prone areas. To simplify what we now call Legacy workflows, we have streamlined each of the workflow configurations for Kinetic resources such as Spaces, Kapps, and Forms. Workflows created in this manner no longer need a webhook setup. Additionally, the relationship between a parent (for example, a form) and a workflow is now managed automatically.

The system no longer uses the “name” value to refer to a specific event type (for example, "Submitted") by default, so you can now have multiple workflows for the same event while naming those workflows with meaningful names that indicate their purpose.

Note: Keep in mind that workflow order is not deterministic and cannot be relied upon to run in any specific order. For example, if you have multiple events set to trigger on the "Submitted" event type, there is no way to specify the order in which the events will run when a form is submitted.

How do I use Integrated Workflows?

Using the new Integrated Workflows is really simple. Workflows can be scoped to one of three parent scopes in the Console: Space, Kapp, or Form. Under each of these parents, you will find a Workflows tab. The most obvious change is that instead of having all of the possible events listed in a table, the table now only shows workflows that have been created. Just click New Workflow, choose the event you want, and give the workflow a meaningful name.

What about my old Workflows?

You can no longer create Legacy Workflows from the various Workflows tabs, but you will see all of the workflows associated with a parent, legacy or otherwise, listed in the table. If your environment has workflows not associated directly to a parent and event, such as legacy Adhoc Workflows, you can still manage these through the Global Workflows section.

Workflow Builder Improvements

We've made various improvements to the Workflow Builder and Run Explorer. Among these, the major changes are the ability to manage multiple tabs and the ability to collapse multiple tabs without closing them.

Multiple tabs in Workflow Builder

Multiple tabs in Workflow Builder

Collapse multiple tabs without closing them

Collapse multiple tabs without closing them

These improvements were made based on feedback from builders using our system. One of the major themes of this feedback centered around the Run Explorer. While it allows builders to visualize the whole run with the Workflow tree visible to assist in understanding and troubleshooting, builders found it difficult to see the Workflow tree without closing tabs that showed valuable information.

Builders with large and complicated workflows noted that they found it difficult to find the open details tab in the panel and wasted time trying to find it in the tree instead. The new dropdown design helps builders keep track of open tabs and makes it easier to manage them.

One piece of early feedback we received on the new workflow builder was that the automatic placement of new nodes, especially in very large trees, can sometimes make finding that node and placing it in an appropriate place very difficult. We've addressed this by changing the new node placement to a two-click process. Click once on the plus sign (+) to start placing your new node, then click again to place it where you want it to be.

Spring Framework Upgrade

Parts of the Kinetic Platform are built on the Spring Framework. This release upgraded the Spring and Spring Security dependencies to the latest 5.2 and 5.4 families, respectively.

Removal of Discussions

When choosing a new internal messaging technology, we had to consider how the Discussions and Topics components functioned within the Platform. Topics is the component that the bundle connects to to get real-time updates from the platform. To date, Discussions was the only part of the Platform using that functionality. A survey of our customer base showed that the Discussions functionality is not used often enough to justify the complexity it adds to customer installs and the Platform in general. As such, we've decided to drop the Discussions and Topics components from the Platform entirely and remove real-time connectivity from the bundle.

What does this mean for my bundle?

If you’re using any Discussions-related handlers in your Workflows, you must remove them or replace them with a new way of accomplishing your designed task. Additionally, your bundle will need to be updated to the latest Kinetic Data React library; if that's not possible, you may need to work with Kinetic Data to find a suitable workaround to prevent your bundle from attempting to connect to the Topics service. If you use the Discussions Panel or other requests in your bundle, that functionality must also be removed. Based on our preliminary survey of our customers and their bundles, we don’t expect this to be a difficult or time-consuming effort.

Customer-Managed Installation Improvements

We've introduced a new tool, Replicated, to facilitate the process of customer-managed installations. Previously, we used a combination of parts of our customer installer wizard and the Gravity tool to facilitate the process. The Replicated experience is faster and more streamlined and provides the customer and Kinetic Data with several tools to facilitate troubleshooting and assist in support calls.

Minor Release Updates

This list reflects changes made between the 6.0.1 and 6.0.5 minor releases for ease of consumption.

Additional Notifications

Notifications for various events in the Console have been added, such as bridge validations and importing multiple workflows.

Form Changes

Forms now include "Notes" and "Process Owner" fields. These fields make it easy for builders to share details and information about their form and workflow.

Workflow Changes

You can now import multiple workflows. Additionally, you can link workflows directly to deferred triggers using the following format:
/app/console/#/workflow/runs?deferralToken=XYZ where "XYZ" is the deferral token.

Space Console Changes

We've added the ability to create new submissions from the Space Console. This functionality isn't as robust as a submission created via your portal, but it allows you to perform maintenance and create referential data without complex UI requirements.

The ability to change the Task Server from the Space Console has been removed. This functionality still exists in the System Console, so your experience will not be impacted.

Log Viewer Changes

We've changed the default sort order of logs in the log viewer to be descending rather than ascending, which allows you to “tail” the platform logs using the Console.

API Documentation Updates

Several improvements and additions have been made to the API documentation available through the OAS specification and rendered through /app/docs.

SAML Single Logout Support

Support for SAML SLO endpoints has been implemented. SAML-enabled tenants will need to update their portals to call /app/saml/logout to trigger this process. The session “local” to the cluster will be invalidated, and then the SAML Single Logout process with your IDP will begin.

Note: Continuing to call /app/logout will only sign users out of their local session.

Display Type Changes

The Display Types options were updated with version 6.0.5 of the Kinetic Platform. You can check your version by selecting Help > About Kinetic > Platform and viewing the Consoles row in the Component list.

If you are running platform 6.0.5 or higher, check your Space Settings Display Type option and ensure one of the values listed below is selected. If an invalid option is selected (for example, Display Page), your custom bundle will not render correctly.

Along with this change, we've replaced the old default bundle with a new platform bundle, which can be selected for new spaces that do not yet have a custom bundle.

Linked Workflow Filtering

We've added the ability to define filters for linked workflows using the same syntax as you would for a webhook filter.

Handler Versions

We've added a "Definition ID" field to Plugins > Handlers, making it easier to identify which version of a handler you're using.

Miscellaneous Updates

  • We've introduced several security updates across the Platform.
  • Several Platform dependencies have been updated.
  • Autowired annotation has been removed from controllers.
  • RabbitMQ has been updated to use the Docker Pull Secret.

Bug Fixes

  • Corrected an issue where an empty application.log file was created in the root "${dataDirectory}/logs" directory when grouping logs by application instance ID.
  • Corrected an issue where Agent tests would fail when running in GitHub Actions.
  • Corrected an issue where the Form Security tab did not default inherited permissions correctly.
  • Corrected an issue where SocketTimeoutExceptions on Webhook Job executions could lead to duplicate runs.
  • Corrected an issue in Tree Builder where Tree Builder clicking Apply in a Connector or Settings form closed the first open tab, not the current tab.
  • Corrected an issue where clicking Edit in the Bridge Model modal window resulted in a message indicating that the bridge model had been deleted. The bridge model was not deleted when the message was displayed.
  • Fixed the title of the Create New WebAPI modal window, which previously said "Clone."
  • Corrected an issue where Workflow Categories were missing global routine data, resulting in what appeared to be empty rows.
  • Corrected an issue where you could not close the Submission Bulk Import window when the import encountered an error.
  • Corrected an issue that prevented you from retrying Webhook Jobs after changes were made to toast modifications.
  • Corrected an issue with SLO vs non-SAML logouts.
  • Corrected an issue where restarting the Kinetic Core component for kinops.io would cause users to be logged out.
  • Corrected an issue where the General tab of the Forms page does not refresh after leaving the Form Builder.