check integrationYaml.details.source - if it fetches a yaml at that url with a fetchedIntegrationYaml.details.version thats newer than integrationYaml.details.version (with semantic version comparisons), show the update message at the top of Integrations settings with the text that that integration has a an update available. If the user chooses to update, show a diffview and a warning at the bottom that updates might execute malicious code. Then a button to update which replaces that integrations integration record (pocketbase table) config file
check integrationYaml.details.source - if it fetches a yaml at that url with a fetchedIntegrationYaml.details.version thats newer than integrationYaml.details.version (with semantic version comparisons), show the update message at the top of Integrations settings with the text that that integration has a an update available. If the user chooses to update, show a diffview and a warning at the bottom that updates might execute malicious code. Then a button to update which replaces that integrations integration record (pocketbase table) config file