feat: release v1.0.2 LeKiwi 语言控制与网站嵌入
web-platform-ci / Standalone decision service (no cloud credentials) (push) Has been cancelled
web-platform-ci / TypeScript, lint, unit, build (push) Has been cancelled
web-platform-ci / Playwright E2E (push) Has been cancelled
lekiwi-compatibility / cpu-compatibility (push) Has been cancelled

集成服务器托管模型、自然语言移动与有界抓放、内置 LeKiwi URL 导入和双摄像头;同步部署契约与指定域名 iframe 白名单,保留原有物理安全、会话及调用预算防护。

更新 npm 包及锁文件版本、CHANGELOG 与发布文档。提交前 typecheck、120 项定向前端测试和 44 项后端测试通过(3 项可选跳过);真实 v2 云模型抓放仍待单独验收,不包含运行密钥或构建产物。
This commit is contained in:
2026-09-24 15:29:49 +08:00
parent f3a8a38acd
commit 0d986f60bd
93 changed files with 5166 additions and 1094 deletions
@@ -83,6 +83,21 @@ function props(
}
describe('ModelControlsSidebar', () => {
it('从空白工作台载入机器人不卸载语言控制工具', () => {
const tools = <input aria-label="任务草稿" defaultValue="" />;
const view = render(
<ModelControlsSidebar
{...props({ snapshot: undefined, workspaceTool: 'controls', workspaceTools: tools })}
/>,
);
const input = screen.getByRole('textbox', { name: '任务草稿' });
fireEvent.change(input, { target: { value: '把方块搬到 B 区' } });
view.rerender(
<ModelControlsSidebar {...props({ workspaceTool: 'controls', workspaceTools: tools })} />,
);
expect(screen.getByRole('textbox', { name: '任务草稿' })).toBe(input);
expect(input).toHaveValue('把方块搬到 B 区');
});
it('没有选择时仅显示收敛的场景摘要', () => {
render(<ModelControlsSidebar {...props()} />);
expect(screen.getByText('未选择对象')).toBeVisible();