Vincent Apps are versioned to guarantee trust and transparency. Once a Vincent App Version is published, its set of Abilities and Policies it uses are immutable. This ensures that Users know exactly what actions they’ve authorized and that App Managers cannot alter those permissions without explicit re-authorization from the User.
Vincent Users don’t just delegate to your App, they delegate to a specific App Version. This Version defines the exact set of Abilities and Policies that your App can execute on their behalf, and can never be changed. This gives your Users confidence that the set of Abilities they've authorized, and the guardrails they've configured with Policies, will never change without their explicit consent.
As the Vincent App Manager, you can create a new version of your App whenever you want to. Some common occasions of when you'll need to create a new Version are:
There are some parts of your Vincent App that you can change without creating a new Version by visiting the Vincent App Dashboard. For each Vincent App you've created, you can change:
Each App Version includes a finite list of Vincent Abilities the App can execute on behalf of Users that authorize the App Version, as well as the enabled Vincent Policies for each Ability that are used to govern the execution of the Abilities.
App Versions have a two step flow before they're available to be delegated to by your Vincent App Users:
To publish a new version of your App:
App Details
menu item from the side bar menuCreate App Version
button:This will display a form prompting you to describe what's changing in this new App Version. The details you provide here will be displayed to your Vincent App Users the next time they sign into your App using Vincent, so be descriptive and clear about what's changing so your users feel informed and confident in permitting delegation to the new App Version.
After submitting the form, you'll be redirected to the App Version dashboard where you can add the Vincent Abilities you'd like to enable for this App Version, as well as configure which Vincent Policies are enabled for each Ability.
When you're finished configuring the App Version, navigate back to the App Version dashboard by clicking the new version number menu item in the side bar menu.
When you're ready, click the Publish App Version
button to register this new App Version on-chain, making it available to set as your Vincent App's currently active App Version.
After publishing a new App Version, it's not immediately set as your Vincent App's currently active App Version. This means existing Vincent App Users who've authorized a previous App Version will not be prompted to upgrade to the new version the next time they sign into your App using Vincent. Additionally, new Vincent App Users will always be permitting the version set as the active App Version.
So to prompt existing App Users to upgrade to the new version, and have new App Users permit the new version by default, you'll need to set the new version as your Vincent App's currently active App Version. This is done on your App's Dashboard which you can navigate to by clicking the App Details
menu item in the side bar menu.
On the App Dashboard, click the Edit App
button to open a form where you can update the App's details, including the currently active App Version at the bottom of the form.
Select the new version you just published, and click the Update App
button to save the changes, and the new version you published will be set as your Vincent App's currently active App Version.
After publishing new App Versions and updating the App's active Version, you may want to disable previous App Versions to force your Vincent App Users to upgrade to newer versions.
This can be done by navigating to each App Version's dashboard (by clicking the version number menu item in the side bar menu) and clicking the Disable App Version
button.
Clicking this button will:
Once an App Version is disabled, the button will change to Enable App Version
. Clicking this will re-enable the App Version, allowing your Vincent App Users who are still on that version to use it again, and permitting your Vincent App Delegatees to execute Vincent Abilities for that version.
If you create a new App Version and don't publish it, or create one and publish it, your Vincent App Users will not be notified of the new version.
It's not until you set the new version as your Vincent App's currently active App Version that your existing Vincent App Users will be prompted to upgrade to the new version the next time they sign into your App using Vincent.
Here is what your App User's will see the next time they sign into your App using Vincent:
Because the App User in this screenshot has permitted an App Version that is still enabled, they're just notified that there is a new version available to upgrade to, but they are not forced to upgrade, and continue to use the version they've already permitted.
If you disable the App Version an App User has permitted, they will be prompted to upgrade to the latest enabled App Version to continue using your App:
If you disable the active App Version, but there's still an enabled App Version available, your App Users will either continue as usual if they are on an enabled Version, or be prompted to upgrade to the latest enabled App Version to continue using your App.
DEV
, TEST
, and PROD
Deployment Statuses appropriately to manage expectations of the stability of your App and whether it's still undergoing development.App Versioning is a cornerstone of Vincent’s trust model. It allows your App to evolve by adding new functionality, fixing issues, or improving User safety without ever compromising the permissions your Users originally granted.
Every App Version is:
As the App Manager, versioning gives you control over your App’s configuration without ever taking control away from your Users.