feat(FN-1133): add plugin hot-reload support

- Add PluginLoader hot-load/unload with watch mode, auto-recovery, and staged loading
- Add PluginRunner reactive integration with executor dynamic tools registration
- Add dashboard reload endpoint (POST /api/plugins/reload) and PluginManager UI
- Add comprehensive tests for plugin-hot-reload (core) and plugin-runner (engine)
- Update plugin authoring docs and add memory notes
- Add changeset for @gsxdsm/fusion minor release
This commit is contained in:
gsxdsm
2026-04-09 19:15:53 -07:00
parent a3163f9935
commit db0d5c8dc9
10 changed files with 1176 additions and 30 deletions

View File

@@ -3837,3 +3837,10 @@ export async function updatePluginSettings(
body: JSON.stringify({ settings }),
});
}
/** Reload a running plugin with updated code */
export async function reloadPlugin(id: string, projectId?: string): Promise<PluginInstallation> {
return api<PluginInstallation>(withProjectId(`/plugins/${encodeURIComponent(id)}/reload`, projectId), {
method: "POST",
});
}