chore(plugins): inventory doctor deprecation compat

This commit is contained in:
Vincent Koc
2026-04-26 03:34:03 -07:00
parent 6dfb03ab2e
commit 4c40cf8783
7 changed files with 493 additions and 12 deletions

View File

@@ -90,6 +90,31 @@ const knownDeprecatedSurfaceMarkers = [
file: "src/plugin-sdk/test-utils.ts",
marker: "Deprecated compatibility alias",
},
{
code: "plugin-install-config-ledger",
file: "src/config/plugin-install-config-migration.ts",
marker: "stripShippedPluginInstallConfigRecords",
},
{
code: "bundled-plugin-load-path-aliases",
file: "src/commands/doctor/shared/bundled-plugin-load-paths.ts",
marker: "plugins.load.paths",
},
{
code: "plugin-owned-web-search-config",
file: "src/commands/doctor/shared/legacy-web-search-migrate.ts",
marker: "tools.web.search",
},
{
code: "plugin-owned-web-fetch-config",
file: "src/commands/doctor/shared/legacy-web-fetch-migrate.ts",
marker: "tools.web.fetch.firecrawl",
},
{
code: "plugin-owned-x-search-config",
file: "src/commands/doctor/shared/legacy-x-search-migrate.ts",
marker: "tools.web.x_search",
},
] as const;
function parseDate(date: string): Date {

View File

@@ -267,6 +267,82 @@ export const PLUGIN_COMPAT_RECORDS = [
diagnostics: ["postinstall migration skip", "postinstall migration force deprecation warning"],
tests: ["src/commands/doctor/shared/plugin-registry-migration.test.ts"],
},
{
code: "plugin-install-config-ledger",
status: "deprecated",
owner: "config",
introduced: "2026-04-25",
deprecated: "2026-04-26",
warningStarts: "2026-04-26",
removeAfter: "2026-07-26",
replacement: "state-managed `plugins/installs.json` install ledger",
docsPath: "/cli/plugins#registry",
surfaces: ["plugins.installs authored config", "plugin install/update migration"],
diagnostics: ["config write migration warning", "doctor registry migration"],
tests: [
"src/config/io.write-config.test.ts",
"src/commands/doctor/shared/plugin-registry-migration.test.ts",
],
},
{
code: "bundled-plugin-load-path-aliases",
status: "deprecated",
owner: "config",
introduced: "2026-04-25",
deprecated: "2026-04-26",
warningStarts: "2026-04-26",
removeAfter: "2026-07-26",
replacement: "packaged bundled plugins resolved through the persisted plugin registry",
docsPath: "/cli/plugins#registry",
surfaces: ["plugins.load.paths entries pointing at bundled plugin source/dist paths"],
diagnostics: ["doctor bundled plugin load-path warning"],
tests: ["src/commands/doctor/shared/bundled-plugin-load-paths.test.ts"],
},
{
code: "plugin-owned-web-search-config",
status: "deprecated",
owner: "provider",
introduced: "2026-04-26",
deprecated: "2026-04-26",
warningStarts: "2026-04-26",
removeAfter: "2026-07-26",
replacement: "`plugins.entries.<plugin>.config.webSearch`",
docsPath: "/tools/web",
surfaces: ["tools.web.search.apiKey", "tools.web.search.<provider>"],
diagnostics: ["doctor legacy web-search config migration"],
tests: ["src/commands/doctor/shared/legacy-web-search-migrate.test.ts"],
},
{
code: "plugin-owned-web-fetch-config",
status: "deprecated",
owner: "provider",
introduced: "2026-04-26",
deprecated: "2026-04-26",
warningStarts: "2026-04-26",
removeAfter: "2026-07-26",
replacement: "`plugins.entries.firecrawl.config.webFetch`",
docsPath: "/tools/web-fetch",
surfaces: ["tools.web.fetch.firecrawl"],
diagnostics: ["doctor legacy web-fetch config migration"],
tests: ["src/commands/doctor/shared/legacy-web-fetch-migrate.test.ts"],
},
{
code: "plugin-owned-x-search-config",
status: "deprecated",
owner: "provider",
introduced: "2026-04-26",
deprecated: "2026-04-26",
warningStarts: "2026-04-26",
removeAfter: "2026-07-26",
replacement: "`plugins.entries.xai.config.webSearch.apiKey`",
docsPath: "/tools/grok-search",
surfaces: ["tools.web.x_search.apiKey"],
diagnostics: ["doctor legacy x_search config migration"],
tests: [
"src/commands/doctor/shared/legacy-x-search-migrate.test.ts",
LEGACY_CONFIG_MIGRATE_TEST_PATH,
],
},
{
code: "plugin-activate-entrypoint-alias",
status: "deprecated",