diff --git a/src/plugins/plugin-lookup-table.ts b/src/plugins/plugin-lookup-table.ts index 3ff905e1805..473019d8de1 100644 --- a/src/plugins/plugin-lookup-table.ts +++ b/src/plugins/plugin-lookup-table.ts @@ -94,6 +94,9 @@ function buildOwnerMaps(plugins: readonly PluginManifestRecord[]): PluginLookUpT for (const cliBackendId of plugin.cliBackends) { appendOwner(cliBackends, cliBackendId, plugin.id); } + for (const cliBackendId of plugin.setup?.cliBackends ?? []) { + appendOwner(cliBackends, cliBackendId, plugin.id); + } for (const setupProvider of plugin.setup?.providers ?? []) { appendOwner(setupProviders, setupProvider.id, plugin.id); } diff --git a/src/plugins/plugin-registry.test.ts b/src/plugins/plugin-registry.test.ts index 946e45e7a53..22f7289bdc2 100644 --- a/src/plugins/plugin-registry.test.ts +++ b/src/plugins/plugin-registry.test.ts @@ -244,6 +244,9 @@ describe("plugin registry facade", () => { expect(resolveProviderOwners({ lookUpTable, providerId: "DEMO" })).toEqual(["demo"]); expect(resolveChannelOwners({ lookUpTable, channelId: "demo-chat" })).toEqual(["demo"]); expect(resolveCliBackendOwners({ lookUpTable, cliBackendId: "demo-cli" })).toEqual(["demo"]); + expect(resolveCliBackendOwners({ lookUpTable, cliBackendId: "demo-setup-cli" })).toEqual([ + "demo", + ]); expect(resolveSetupProviderOwners({ lookUpTable, setupProviderId: "demo-setup" })).toEqual([ "demo", ]); @@ -254,6 +257,13 @@ describe("plugin registry facade", () => { matches: "demo-command", }), ).toEqual(["demo"]); + expect( + resolvePluginContributionOwners({ + lookUpTable, + contribution: "cliBackends", + matches: "demo-setup-cli", + }), + ).toEqual(["demo"]); expect( resolvePluginContributionOwners({ lookUpTable,