From c8e449f5c847d59a9eee875799b04945c6ca33b3 Mon Sep 17 00:00:00 2001 From: Alexander Davydov Date: Fri, 20 Mar 2026 19:30:32 +0300 Subject: [PATCH] CI: allow private bundled runtime barrels --- scripts/check-extension-plugin-sdk-boundary.mjs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/scripts/check-extension-plugin-sdk-boundary.mjs b/scripts/check-extension-plugin-sdk-boundary.mjs index 91ed44230fc..2d7cf440c24 100644 --- a/scripts/check-extension-plugin-sdk-boundary.mjs +++ b/scripts/check-extension-plugin-sdk-boundary.mjs @@ -110,6 +110,10 @@ function resolveExtensionRoot(filePath) { return `${segments[0]}/${segments[1]}`; } +function isRuntimeApiFile(filePath) { + return normalizePath(filePath).endsWith("/runtime-api.ts"); +} + function classifyReason(mode, kind, resolvedPath, specifier) { const verb = kind === "export" @@ -172,6 +176,11 @@ function collectFromSourceFile(mode, sourceFile, filePath) { if (!specifier.startsWith(".") || !resolvedPath || !extensionRoot) { return; } + if (isRuntimeApiFile(filePath) && resolvedPath.startsWith("src/plugin-sdk/")) { + // Bundled extensions use private runtime barrels to bridge into focused plugin-sdk + // facades without widening the public npm export surface for those channels. + return; + } if (resolvedPath === extensionRoot || resolvedPath.startsWith(`${extensionRoot}/`)) { return; }