Repository navigation
refactor(plugin-dashboard, plugin-list)!: retire eight zero-consumer entry exports - #30541
Merged
Merged
Conversation
…entry exports plugin-dashboard's entry stops publishing CONFIG_PANEL_DEFAULT_TRANSLATIONS, useConfigPanelTranslation, RetiredDashboardNodeTombstone, reportRetiredDashboardNodeType and resetRetiredDashboardNodeTypeReports; plugin-list's stops publishing ViewSwitcherDropdown, TabBarSelect and evaluateConditionalFormatting. Each name had zero hits outside its package (workspace and hotcrm); every module stays. The dashboard bare-key test imports the tombstone and its reset helper from their module. Claude-Session: https://claude.ai/code/session_01L6bhgUR8Nu4M7tbtgES7q2 Co-authored-by: Claude <noreply@anthropic.com>
Contributor
Author
|
domain:ui#6 · os-sales · session_01L6bhgUR8Nu4M7tbtgES7q2 维护者速读
席位核对 — ACCEPT · head 14d4c82
|
This was referenced Nov 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requested by Sales · project thread
Part of #25921. The umbrella stays open; this is one barrel batch of it (claim 6660204183, amended 6660498263, seat
domain:ui#6).Clause-②: no (narrowing)
Metadata-protocol: none
维护者速读
@object-ui/plugin-dashboard的包入口不再导出 5 个名字(配置面板的默认英文表与翻译钩子、已退役节点类型的墓碑组件及其上报/重置函数),@object-ui/plugin-list不再导出 3 个名字(视图切换下拉、标签栏下拉、条件格式包装函数)。模块本身全部保留。@object-ui/*包不受影响,退役节点仍按名拒绝。回滚即 revert 本 PR。ui/packages/plugin-dashboard/src/index.tsx(两段导出改写)、.changeset/25921-plugin-dashboard-zero-consumer-exports.md(迁移说明)、ui/packages/plugin-list/src/index.tsx。git grep -n -w -e ViewSwitcherDropdown -e TabBarSelect -e evaluateConditionalFormatting -e useConfigPanelTranslation -e RetiredDashboardNodeTombstone -- ':!ui/packages/plugin-list' ':!ui/packages/plugin-dashboard' ':!**/CHANGELOG.md'应只命中两份新 changeset。What changes
ui/packages/plugin-dashboard/src/index.tsx: the entry stops exportingCONFIG_PANEL_DEFAULT_TRANSLATIONS,useConfigPanelTranslation,RetiredDashboardNodeTombstone,reportRetiredDashboardNodeTypeandresetRetiredDashboardNodeTypeReports.ConfigPanelTranslate(the README teaches it) andRETIRED_DASHBOARD_NODE_TYPESstay. The two comments that justified the old exports are rewritten: the defaults-vs-pack mirror gate (defaults-maps-mirror-en-pack.test.tsx) discovers every defaults table from source throughscanDefaultsTables, so it needs no import from this entry.ui/packages/plugin-dashboard/src/__tests__/dashboardBareKeyOwnership.test.tsx: importsRetiredDashboardNodeTombstoneandresetRetiredDashboardNodeTypeReportsfrom../retired-node-typesinstead of../index. Same objects, so the identity comparison is unchanged; the entry import still performs the registrations.ui/packages/plugin-list/src/index.tsx: the entry stops exportingViewSwitcherDropdown,TabBarSelectandevaluateConditionalFormatting..changeset/25921-plugin-dashboard-zero-consumer-exports.mdand.changeset/25921-plugin-list-zero-consumer-exports.md: patch level,!title, BREAKING paragraph, one FROM/TO line per retired name, ADR-0087 markernot-required (runtime-export-retired …)naming every operand.ListViewrendersViewSwitcherDropdown; the config panels use the hook;index.tsxregisters the tombstone; the rest are read by their own tests).Tests
Census on
origin/mainfa9c0aa with the #28385 / #29388 method: the entry export list from the TypeScript checker; per namegit grep -o -w -Fover the whole tree minus the package directory,**/CHANGELOG.md, lockfiles and.changeset/**; the package README, SKILL.md and demo; keep rule 3 (a name a kept export's declared signature reaches, walked with the checker); hotcrm6961ab1git grep -l -w -F.CONFIG_PANEL_DEFAULT_TRANSLATIONSuseConfigPanelTranslationRetiredDashboardNodeTombstonereportRetiredDashboardNodeTyperesetRetiredDashboardNodeTypeReportsConfigPanelTranslateWidgetDatasetCatalogEntry,WidgetDatasetDimension,WidgetDatasetMeasureWidgetConfigPanelPropsDashboardMetricNodeSchemawidgetDispatch'sCustomNodeRegistryaugmentation into consumers' programsViewSwitcherDropdownTabBarSelectevaluateConditionalFormattingTabBarProps,UserFiltersHandle,ListViewRowGroupTabBar,UserFiltersProps,ListViewPropsDashboardRenderer76,RETIRED_DASHBOARD_NODE_TYPES2,ViewSwitcher29,TabBar11,normalizeFilterCondition9,ListView621; hotcrmListView7Readings at head 14d4c82:
turbo run type-checkfor@object-ui/plugin-dashboard,@object-ui/plugin-list,@object-ui/app-shell,@object-ui/consolewith their^buildclosure: 77 of 77 tasks successful (lock VERDICT command-exit 0, 8m39s).pnpm --dir ui exec vitest run --maxWorkers=2 packages/plugin-dashboard/ packages/plugin-list/: Test Files 391 passed (391); Tests 3741 passed, 6 skipped (3747); VERDICT command-exit 0..d.ts: a temporary probe in app-shell importing all eight retired names plus four kept controls gave exactly eight errors, one per retired name (TS2305/TS2724 … has no exported member), whileRETIRED_DASHBOARD_NODE_TYPES,DashboardRenderer,TabBarandViewSwitcherresolved. Probe deleted;git statusclean.pnpm --dir ui run check:readme-exports:0 fabricated, 0 stale omission(s); exit 1 only on the known prerequisite (packages/clidist unbuilt, its two self-imports unjudged).node scripts/check-platform-checklist.mjs --changed-from origin/main: exit 0, 0 anchored files.Acceptance notes
TabBarSelectandevaluateConditionalFormattingnow have no reader in the package's non-test code either: only their own tests import them from the module.evaluateConditionalFormattingis a one-line wrapper over@object-ui/core'sresolveConditionalFormatting. Retiring the bodies (and their tests) is a later pass on this card, not filed separately.ui/packages/plugin-dashboard/README.mdsays the package's "whole type export surface isWidgetConfigPanelProps,ConfigPanelTranslateand the threeWidgetDataset*catalog types";DashboardMetricNodeSchemahas been on the entry since an earlier release, so that sentence was already incomplete before this PR. Untouched here (README not on the claim's surface).claude/project-thread-h719zv, notclaude/issue-25921-*.Verification
Derived gates, dogfood battery and the final-head readings are in the os-dev-report comment on #25921; CI check-runs on this PR are the record for every family CI runs.
Generated by Claude Code