Skip to content

[WIP] Add auto-update feature with configuration settings#139

Closed
Copilot wants to merge 1 commit intomasterfrom
copilot/add-auto-update-feature
Closed

[WIP] Add auto-update feature with configuration settings#139
Copilot wants to merge 1 commit intomasterfrom
copilot/add-auto-update-feature

Conversation

Copy link

Copilot AI commented Feb 13, 2026

Auto-Update Feature Implementation Plan

  • Add node-cron dependency to package.json
  • Add config settings to conf/config.schema.json (autoUpdate, updateCron, semverSpecifier)
  • Add checkForPluginUpdate function to AdaptFrameworkModule.js
  • Add installPlugin function with logging to AdaptFrameworkModule.js
  • Set up CRON automated task in AdaptFrameworkModule.js init method
  • Add logging to installPlugin function in AdaptFrameworkModule.js
  • Test the implementation manually
  • Run code review
  • Run security checks
Original prompt

This section details on the original issue you should resolve

<issue_title>Add auto-update feature</issue_title>
<issue_description>### Feature description

Add extra config settings:

  • autoUpdate (Boolean, default: false): will enable/disable the feature
  • updateCron (string, default @daily or 0 0 * * *): should be in a standard CRON format, and will specify how often to run the update check
  • semverSpecifier (string, default: ^, enum: ['~', '^', '*']): will clamp which versions will be installed automatically according to the npm semver ranges: * for major/all updates, ^ for minor updates (i.e. 1.x.x), and ~ for patch updates (i.e. 1.0.x)

Add update check function

Function should look something like:

/**]
 * @param {string|Array<string>} pluginName The name (or array of names) for the plugins to check
 * @return {Object|Array<Object>} Result(s) from getPluginInfos
 */
checkForPluginUpdate (plugin_name) {
}

Add CRON automated task

Set up automated update checker to run at the interval specified by updateCron, and use new checkForPluginUpdate function to check all installed plugins (with isLocalInstall: false property).

For plugins with updates found, installPlugin should be called, passing plugin name and the version to install.

Logging

  • checkForPluginUpdate:
    • Log one message at the beginning of the check: this.log('verbose', 'UPDATE', 'checking for updates for ${pluginName}')
    • Log message at the end of the function to summarise: this.log('info', 'UPDATE', 'update found for ${pluginName} (${updateVersion})') or this.log('verbose', 'UPDATE', 'no updates found for ${pluginName}')
  • installPlugin:
    • Add log at beginning of the function this.log('debug', 'INSTALL', 'installing ${pluginName}@${version}')
    • Add log at end of the function this.log('info', 'INSTALL', 'installed ${pluginName}@${version}')

Can you work on this feature?

  • I can contribute</issue_description>

Comments on the Issue (you are @copilot in this section)


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI requested a review from taylortom February 13, 2026 12:07
Copilot stopped work on behalf of taylortom due to an error February 13, 2026 12:07
@taylortom taylortom closed this Feb 13, 2026
@taylortom taylortom deleted the copilot/add-auto-update-feature branch February 13, 2026 12:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add auto-update feature

2 participants