Skip to content

test(chat): add regression guards for webc to React migration - #4408

Draft
RSS1102 wants to merge 1 commit into
developfrom
test/chat-webc-migration-guards
Draft

RSS1102 wants to merge 1 commit into
developfrom
test/chat-webc-migration-guards

Conversation

@RSS1102

@RSS1102 RSS1102 commented Sep 29, 2026

Copy link
Copy Markdown
Collaborator

为 packages/pro-components/chat 建立迁移前的回归守卫,用于验证 webc 迁移到纯 React 后 API 调用方式与 UI 行为不变。

  • 新增 tests:覆盖单项 API、关键 API 组合、DOM 行为三类守卫
  • helpers:shadow DOM 穿透查询与事件载荷解包,避免断言绑定当前实现
  • setup:补齐 jsdom 缺失的 Constructable Stylesheets / ResizeObserver / scrollTo
  • vitest:接入 setup 并内联 webc 依赖链,修复无扩展名导入导致的解析失败
  • pnpm-workspace:显式包含 common 子包,修复 pnpm install 失败

当前 83 用例(80 passed / 3 skipped),3 条 skip 为迁移后验收项。

🤔 这个 PR 的性质是?

  • 日常 bug 修复
  • 新特性提交
  • 文档改进
  • 演示代码改进
  • 组件样式/交互改进
  • CI/CD 改进
  • 重构
  • 代码风格优化
  • 测试用例
  • 分支合并
  • 其他

🔗 相关 Issue

💡 需求背景和解决方案

📝 更新日志

  • 本条 PR 不需要纳入 Changelog

tdesign-react

@tdesign-react/chat

☑️ 请求合并前的自查清单

⚠️ 请自检并全部勾选全部选项。⚠️

  • 文档已补充或无须补充
  • 代码演示已提供或无须提供
  • TypeScript 定义已补充或无须补充
  • Changelog 已提供或无须提供

为 packages/pro-components/chat 建立迁移前的回归守卫,用于验证 webc 迁移到纯 React 后 API 调用方式与 UI 行为不变。

- 新增 __tests__:覆盖单项 API、关键 API 组合、DOM 行为三类守卫
- helpers:shadow DOM 穿透查询与事件载荷解包,避免断言绑定当前实现
- setup:补齐 jsdom 缺失的 Constructable Stylesheets / ResizeObserver / scrollTo
- vitest:接入 setup 并内联 webc 依赖链,修复无扩展名导入导致的解析失败
- pnpm-workspace:显式包含 common 子包,修复 pnpm install 失败

当前 83 用例(80 passed / 3 skipped),3 条 skip 为迁移后验收项。
@github-actions

Copy link
Copy Markdown
Contributor

Size Change: 0 B

Total Size: 76.3 kB

ℹ️ View Unchanged
Filename Size
packages/tdesign-react-aigc/es/_util/reactify.js 2.99 kB
packages/tdesign-react-aigc/es/_util/useDynamicStyle.js 615 B
packages/tdesign-react-aigc/es/attachments/index.js 345 B
packages/tdesign-react-aigc/es/chat-actionbar/index.js 984 B
packages/tdesign-react-aigc/es/chat-engine/components/activity/index.js 378 B
packages/tdesign-react-aigc/es/chat-engine/components/activity/registry.js 454 B
packages/tdesign-react-aigc/es/chat-engine/components/activity/render.js 1.12 kB
packages/tdesign-react-aigc/es/chat-engine/components/activity/types.js 106 B
packages/tdesign-react-aigc/es/chat-engine/components/index.js 973 B
packages/tdesign-react-aigc/es/chat-engine/components/json-render/catalog/atomic/button.js 1.51 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/catalog/atomic/card.js 1.01 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/catalog/atomic/input.js 1.52 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/catalog/atomic/layout.js 1.58 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/catalog/atomic/text.js 997 B
packages/tdesign-react-aigc/es/chat-engine/components/json-render/catalog/catalog-to-prompt.js 7.53 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/contexts/actions.js 2.94 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/contexts/data.js 11.8 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/contexts/index.js 428 B
packages/tdesign-react-aigc/es/chat-engine/components/json-render/contexts/store.js 954 B
packages/tdesign-react-aigc/es/chat-engine/components/json-render/contexts/tree.js 929 B
packages/tdesign-react-aigc/es/chat-engine/components/json-render/contexts/validation.js 2.05 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/contexts/visibility.js 709 B
packages/tdesign-react-aigc/es/chat-engine/components/json-render/index.js 748 B
packages/tdesign-react-aigc/es/chat-engine/components/json-render/registry/a2ui-binding.js 2.1 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/registry/a2ui-registry.js 1.48 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/registry/config.js 517 B
packages/tdesign-react-aigc/es/chat-engine/components/json-render/registry/index.js 1.85 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/renderer/_index.js 1.52 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/renderer/A2UIJsonRenderActivityRenderer.js 3.5 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/renderer/A2UISurface.js 2.71 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/renderer/JsonRenderActivityRenderer.js 842 B
packages/tdesign-react-aigc/es/chat-engine/components/json-render/renderer/JsonUIRenderer.js 1.68 kB
packages/tdesign-react-aigc/es/chat-engine/components/json-render/types.js 106 B
packages/tdesign-react-aigc/es/chat-engine/components/json-render/utils/sanitize-props.js 933 B
packages/tdesign-react-aigc/es/chat-engine/components/provider/agent-state.js 430 B
packages/tdesign-react-aigc/es/chat-engine/components/shared/ComponentErrorBoundary.js 836 B
packages/tdesign-react-aigc/es/chat-engine/components/shared/createRegistry.js 942 B
packages/tdesign-react-aigc/es/chat-engine/components/shared/index.js 296 B
packages/tdesign-react-aigc/es/chat-engine/components/shared/useRegistrationListener.js 554 B
packages/tdesign-react-aigc/es/chat-engine/components/toolcall/index.js 459 B
packages/tdesign-react-aigc/es/chat-engine/components/toolcall/registry.js 457 B
packages/tdesign-react-aigc/es/chat-engine/components/toolcall/render.js 2.38 kB
packages/tdesign-react-aigc/es/chat-engine/components/toolcall/types.js 208 B
packages/tdesign-react-aigc/es/chat-engine/hooks/index.js 436 B
packages/tdesign-react-aigc/es/chat-engine/hooks/useAgentActivity.js 934 B
packages/tdesign-react-aigc/es/chat-engine/hooks/useAgentState.js 1.16 kB
packages/tdesign-react-aigc/es/chat-engine/hooks/useAgentToolcall.js 947 B
packages/tdesign-react-aigc/es/chat-engine/hooks/useChat.js 1.04 kB
packages/tdesign-react-aigc/es/chat-engine/index.js 1.19 kB
packages/tdesign-react-aigc/es/chat-filecard/index.js 345 B
packages/tdesign-react-aigc/es/chat-loading/index.js 351 B
packages/tdesign-react-aigc/es/chat-markdown/index.js 384 B
packages/tdesign-react-aigc/es/chat-message/index.js 358 B
packages/tdesign-react-aigc/es/chat-sender/index.js 349 B
packages/tdesign-react-aigc/es/chat-thinking/index.js 369 B
packages/tdesign-react-aigc/es/chatbot/index.js 393 B
packages/tdesign-react-aigc/es/index.js 1.37 kB
packages/tdesign-react-aigc/es/style/index.js 148 B

compressed-size-action::tdesign-react-chat

@tdesign-bot

Copy link
Copy Markdown
Collaborator

TDesign Component Site Preview Open

Component Preview
tdesign-react 完成
@tdesign-react/chat 完成

@pkg-pr-new

pkg-pr-new Bot commented Sep 29, 2026

Copy link
Copy Markdown
  • tdesign-react-demo

    npm i https://pkg.pr.new/tdesign-react@4408
    
    npm i https://pkg.pr.new/@tdesign-react/chat@4408
    

commit: 5173511

@github-actions

Copy link
Copy Markdown
Contributor

Size Change: 0 B

Total Size: 938 kB

ℹ️ View Unchanged
Filename Size
packages/tdesign-react/dist/reset.css 1.93 kB
packages/tdesign-react/dist/tdesign.css 61 kB
packages/tdesign-react/dist/tdesign.js 517 kB
packages/tdesign-react/dist/tdesign.min.css 55.2 kB
packages/tdesign-react/dist/tdesign.min.js 303 kB

compressed-size-action::tdesign-react

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants