feat(FN-3071): add droid runtime plugin with event bridge, process manageme

This merge introduces a droid runtime plugin system with event bridge and process management (FN-3228), stabilizes plugin workspace verification gates and suppresses placeholder plugin shells in onboarding/settings flows (FN-3071), tokenizes danger/error styling in task detail components (FN-3350),

Fusion-Task-Id: FN-3071
This commit is contained in:
Fusion
2026-05-04 04:24:55 -07:00
committed by gsxdsm
parent 02d28359c2
commit b8d36506db
14 changed files with 343 additions and 17 deletions

View File

@@ -104,6 +104,14 @@ describe("CLI Vitest workspace resolution", () => {
find: String(/^@fusion\/dashboard$/),
replacement: join(workspaceRoot, "packages", "dashboard", "src", "index.ts"),
},
{
find: String(/^@fusion-plugin-examples\/droid-runtime\/probe$/),
replacement: join(workspaceRoot, "plugins", "fusion-plugin-droid-runtime", "src", "probe.ts"),
},
{
find: String(/^@fusion-plugin-examples\/droid-runtime$/),
replacement: join(workspaceRoot, "plugins", "fusion-plugin-droid-runtime", "src", "index.ts"),
},
{
find: String(/^@fusion\/test-utils$/),
replacement: join(workspaceRoot, "packages", "core", "src", "__test-utils__", "workspace.ts"),
@@ -112,7 +120,10 @@ describe("CLI Vitest workspace resolution", () => {
);
for (const entry of normalized) {
expect(entry.replacement).toContain(`${join("packages", "")}`);
expect(
entry.replacement.includes(`${join("packages", "")}`) ||
entry.replacement.includes(`${join("plugins", "")}`),
).toBe(true);
expect(entry.replacement).toContain(`${join("src", "")}`);
expect(entry.replacement).not.toContain(`${join("dist", "")}`);
}

View File

@@ -17,6 +17,14 @@ export default defineConfig({
{ find: /^@fusion\/dashboard$/, replacement: resolve(__dirname, "../dashboard/src/index.ts") },
{ find: /^@fusion\/engine$/, replacement: resolve(__dirname, "../engine/src/index.ts") },
{ find: /^@fusion\/plugin-sdk$/, replacement: resolve(__dirname, "../plugin-sdk/src/index.ts") },
{
find: /^@fusion-plugin-examples\/droid-runtime\/probe$/,
replacement: resolve(__dirname, "../../plugins/fusion-plugin-droid-runtime/src/probe.ts"),
},
{
find: /^@fusion-plugin-examples\/droid-runtime$/,
replacement: resolve(__dirname, "../../plugins/fusion-plugin-droid-runtime/src/index.ts"),
},
{ find: /^@fusion\/test-utils$/, replacement: resolve(__dirname, "../core/src/__test-utils__/workspace.ts") },
],
},