#Versioning
Access the Versioning
Versioning module allows CPA users to manage conversational processes in a secure way. Versioning exists for two main reasons:
- For auditing purposes, to keep track of major changes in the conversational process.
- For testing purposes, to allow testing different versions of the chatbot at the same time.
- To segregate various version of the conversational process in test from the one active and live in Production (in other words, changes can be made on a project without impacting the Production).
- To guarantee the rollback to a previous version of the conversational process.
Versioning can be access form the Workspace by clicking on a project.
Version tree
Versions of a conversational process are sometimes referred as branches: this because the versioning is based on a tree structure, like the following example.
The versioning tree presents three types of nodes:
- the grey node, containing a version of the conversational process which is not published (they are like old version of the process kept for auditing a backup purposes)
- the blue node, containing the version of the conversational process available in User Acceptability Testing (UAT)
- the orange node, containing the version of the conversational process live in Production
Release process
The CPA administrator can control the releases in UAT and in Production from the Versioning module. The release process is described in detail in the following chapter Release in UAT and Production.
⚠️ Important note Promotion to production is a feature available for administrator users only. This is to minimise the risk of promoting a conversational process by mistake and to give the control to expert platform users only.
Create new version
When hovering on any version available in the versioning, a plus [+] icon will appear beside the version box. By clicking this icon, a clone of that version will be created.
For example, if I click on the plus [+] icon of version 6
, version 7
will be created as a clone of version 6
.
When creating a new version, you will be asked to enter a description for the new version, so to help you identify the content of such version. The description and the timestamp of the creation of the version will be available in the version panel when hovering over the version box.
⚠️ Important note
Version ids are sequential.
In the example above, if versions 7
, 8
and 9
already exist then a new version 10
will be created.
Version ids are automatically generated by the system and can't be modified by the CPA users.
Test conversational process
Generally speaking, two icons are action icons are available when hovering a version of the tree:
- an icon to open the chatbot that particular version of conversational process
- an icon to manage the release process in Production or UAT (the behaviour is describe in the chapter Release in UAT and Production)
The first icon will open the chatbot web page into a new tab of the browser and start the conversational process of the selected version.
⚠️ Important note The URL of the chatbot running a specific version of the tree will have the following format:
https://<geo>.<env>.app.spixii.ai/<web_client>/web/?spixii_bot_id=<bot_id>&b=<selected_version>
where the parameter b=<selected_version>
is the id of the version.
On one hand, the parameter b
is useful to test and validate versions of the conversational process that are not in published in UAT or Production; but on the other hand, it could be undesired to allow end users to run unpublished versions of the conversational process by playing around with the value of b
.
Such versions might be not maintained and could lead to unexpected behaviour and data breaches.
To overcome this potential undesired behaviour, once a conversational process reaches a good level of testing and stability in Production, it's good practice to set to Off the option Enable unpublished branch testing under the Project settings menu.
In this way, the b
parameter will be ignored and only the published versions of the conversational process, both in UAT and Production, could be executed thought the chatbot.