feat(FN-3156): add database schema init hook runner for plugin settings lif
The merge adds plugin schema initialization lifecycle support (FN-3156), introduces a ResearchTaskActionModal with model fallback notifications (FN-3012, FN-3008), adds async planning draft sync to prevent UI blocking (FN-3229), and implements viewport-conditional mission split layout (FN-3130). Inf Fusion-Task-Id: FN-3156
This commit is contained in:
@@ -157,6 +157,19 @@ export class PluginRunner {
|
||||
const result = await this.options.pluginLoader.loadAllPlugins();
|
||||
executorLog.log(`PluginRunner loaded ${result.loaded} plugins (${result.errors} errors)`);
|
||||
|
||||
// Execute onSchemaInit hooks from loaded plugins.
|
||||
const schemaInitHooks = this.options.pluginLoader.getPluginSchemaInitHooks();
|
||||
if (schemaInitHooks.length > 0) {
|
||||
executorLog.log(`Executing onSchemaInit hooks from ${schemaInitHooks.length} plugins`);
|
||||
try {
|
||||
const db = this.options.taskStore.getDatabase();
|
||||
await db.runPluginSchemaInits(schemaInitHooks);
|
||||
} catch (error) {
|
||||
const message = error instanceof Error ? error.message : String(error);
|
||||
executorLog.log(`onSchemaInit execution failed: ${message}`);
|
||||
}
|
||||
}
|
||||
|
||||
// Subscribe to store events for task lifecycle hooks
|
||||
this.subscribeToStoreEvents();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user