feat(FN-3722): route plugin store to configured global directory

Merges centralized plugin installation (FN-3722): TaskStore plugin store is now routed to a configured global directory with legacy migration hardening, and CLI plugin commands are aligned accordingly, backed by comprehensive integration and regression tests. Also includes a dashboard fix to return

Fusion-Task-Id: FN-3722
This commit is contained in:
Fusion
2026-05-08 08:03:39 -07:00
committed by gsxdsm
parent 6797cc23ba
commit b8d14849ee
17 changed files with 351 additions and 42 deletions

View File

@@ -1635,6 +1635,10 @@ export class Database {
if (version < 24) {
this.applyMigration(24, () => {
// Legacy project-local plugin table (introduced in v24) is retained for
// one-shot migration reads by PluginStore.migrateLegacyProjectRows().
// Post-FN-3722 all new plugin install writes must go to central
// plugin_installs + project_plugin_states tables; writes here are a bug.
this.db.exec(`
CREATE TABLE IF NOT EXISTS plugins (
id TEXT PRIMARY KEY,