feat(FN-3637): establish canonical roadmap plugin ID and compatibility rout

Merged commits stabilize the Fusion roadmap plugin's identity and routing surface, establishing a canonical plugin ID and compatibility routes so the roadmap plugin integrates cleanly with the dashboard's plugin system. Added new roadmap-routes and roadmap-suggestions modules in the dashboard packag

Fusion-Task-Id: FN-3637
This commit is contained in:
Fusion
2026-05-11 06:04:17 -07:00
committed by gsxdsm
parent 119ba88a3f
commit d910c0c0f3
33 changed files with 219 additions and 81 deletions

View File

@@ -598,7 +598,7 @@ describe("Database", () => {
it("executes roadmap plugin schema hook to create roadmap-owned tables and indexes", async () => {
await db.runPluginSchemaInits([
{
pluginId: "roadmap-planner",
pluginId: "fusion-plugin-roadmap",
hook: ensureRoadmapSchema,
},
]);

View File

@@ -9,13 +9,13 @@ describe("PluginLoader.createRouteContext", () => {
const baseStore = { getRootDir: () => "/tmp" } as any;
const loader = new PluginLoader({ pluginStore, taskStore: baseStore });
const resolveProjectTaskStore = vi.fn();
const ctx = await loader.createRouteContext("roadmap-planner", {
const ctx = await loader.createRouteContext("fusion-plugin-roadmap", {
taskStore: baseStore,
settings: { ok: true },
resolveProjectTaskStore,
});
expect(ctx.pluginId).toBe("roadmap-planner");
expect(ctx.pluginId).toBe("fusion-plugin-roadmap");
expect(ctx.settings).toEqual({ ok: true });
expect(ctx.resolveProjectTaskStore).toBe(resolveProjectTaskStore);
});

View File

@@ -841,7 +841,7 @@ describe("PluginUiSlotDefinition", () => {
describe("PluginDashboardViewDefinition", () => {
it("accepts a valid PluginDashboardViewDefinition with optional fields", () => {
const view = {
viewId: "roadmap-planner",
viewId: "fusion-plugin-roadmap",
label: "Roadmap Planner",
componentPath: "./views/RoadmapPlanner.js",
icon: "Map",
@@ -850,7 +850,7 @@ describe("PluginDashboardViewDefinition", () => {
description: "Plan milestones and slices",
};
expect(view.viewId).toBe("roadmap-planner");
expect(view.viewId).toBe("fusion-plugin-roadmap");
expect(view.placement).toBe("overflow");
expect(view.description).toContain("milestones");
});