Vincent Apps are versioned to guarantee trust and transparency. Once a Vincent App Version is published, its set of Tools 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 Tools and Policies that your App can execute on their behalf, and can never be changed. This gives your Users confidence that the set of Tools they've authorized, and are governing with their configured 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 Version of your App is stored on-chain in the Vincent App Registry smart contract, with no ability to modify the Version once it's been published to the Registry.
Each App Version includes:
Note: Once published, App Versions cannot be modified. If you need to make any changes, you'll need to publish a new Version.
Before creating a new App Version
Creating a new App Version requires that you have tokens on Lit Protocol's Yellowstone blockchain to pay for gas. You can use this faucet to get the Lit test tokens used to pay for creating the new App Version.
To publish a new version of your App:
Manage Tool Policies
button:You will then be shown the following screen which displays:
After updating the Tools and Policies for your App, you'll need to click the Publish New Version
button to publish the Version on-chain. This will prompt you to sign a transaction with your connected Vincent App Manager wallet.
After it's published, your new App Version will be immediately available for Vincent Users to authorize/upgrade to the next time they visit your App’s Vincent Consent Page.
Also on the Vincent App Overview page, you'll see an Advanced Functions
button:
Clicking this button will navigate you to the advanced settings for your App, including the option to manage your App Versions:
After clicking the Manage Versions
button, you'll be given the option to select from your App Versions. You can see which Version are currently enabled, and which are disabled:
Select the App Version you'd like to enable or disable, and click the Enable Version
or Disable Version
button to toggle the Version's status. This will prompt you to sign a transaction with your connected Vincent App Manager wallet to update the App's status in the on-chain App Registry.
Enabled App Versions mean that new Users can authorize the corresponding set of Tools and Policies to be executed on their behalf, and existing Users of the enabled Version can continue to authenticate with Vincent for your App.
New Users will never be prompted to authorize disabled App Versions, and existing Users who've previously permitted a now disabled Version will either be prompted to update to the latest enabled Version, or will no longer be able to authenticate with Vincent for your App if there is no newer App Version to upgrade to:
Note: A disabled App Version will also prohibit your App Delegatees from executing the corresponding Tools on behalf of your Users.
The latest enabled App Version is always the version that new Users will be prompted to authorize when they visit your App’s Vincent Consent Page.
If you have multiple enabled App Versions, existing Users who've permitted previous Versions are still able to use those Versions up until the point you disable it.
However, those Users will be prompted to upgrade to the latest enabled App Version the next time they visit your App’s Vincent Consent Page:
DEV
, TEST
, and PROD
App modes 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.