Skip to content

[Cpp API Compatibility] add at::vstack compat interface - #79175

Open
youge325 wants to merge 1 commit into
PaddlePaddle:developfrom
youge325:add/vstack-20260528
Open

[Cpp API Compatibility] add at::vstack compat interface#79175
youge325 wants to merge 1 commit into
PaddlePaddle:developfrom
youge325:add/vstack-20260528

Conversation

@youge325

@youge325 youge325 commented May 28, 2026

Copy link
Copy Markdown
Contributor

PR Category

Execute Infrastructure

PR Types

New features

Description

为 Paddle C++ 兼容层新增 at::vstack 接口,用于将张量序列沿垂直方向(第 0 维)堆叠。

  • 新增接口声明:paddle/phi/api/include/compat/ATen/ops/vstack.h
  • 新增单测:test/cpp/compat/ATen_vstack_test.cc(8 个用例)
  • 行为与 PyTorch 保持一致:
    • 0D 张量 → reshape 为 (1, 1)
    • 1D 张量 → unsqueeze(0) 为 (1, N)
    • 2D+ 张量 → 直接沿 dim 0 concat
    • 空输入 → TORCH_CHECK 抛异常
  • 覆盖 Shape:标量、1D、2D 小 shape、2D 大 shape (50x100)、含零维度、全一维度、混合维度
  • 覆盖 Dtype:kFloat、kDouble、kInt、kLong

PCAT 跨框架对比测试同步新增 12 个用例,Paddle / PyTorch 双端均通过,result_cmp 无差异。PR: PFCCLab/PaddleCppAPITest#65

是否引起精度变化

Copilot AI review requested due to automatic review settings May 28, 2026 12:23
@paddle-bot

paddle-bot Bot commented May 28, 2026

Copy link
Copy Markdown

你的PR提交成功,感谢你对开源项目的贡献!
请关注后续CI自动化测试结果,详情请参考Paddle-CI手册
Your PR has been submitted. Thanks for your contribution!
Please wait for the result of CI firstly. See Paddle CI Manual for details.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Adds an ATen compatibility implementation of vstack and validates it with new C++ tests.

Changes:

  • Introduced at::vstack(const std::vector<at::Tensor>&) compatibility API implemented via preprocessing + at::cat.
  • Added C++ unit tests covering basic shape/dtype behavior and empty input handling.
  • Exported the new op through compat/ATen/Functions.h.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.

File Description
test/cpp/compat/ATen_vstack_test.cc Adds unit tests for at::vstack across shapes/dtypes and an empty-list error case.
paddle/phi/api/include/compat/ATen/ops/vstack.h Implements at::vstack for compat by normalizing tensor ranks then concatenating.
paddle/phi/api/include/compat/ATen/Functions.h Includes the new vstack op header in the compat Functions umbrella header.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +17 to +42
#include <ATen/core/Tensor.h>
#include <c10/util/Exception.h>
#include <vector>

#include "paddle/phi/api/include/api.h"

namespace at {

inline at::Tensor vstack(const std::vector<at::Tensor>& tensors) {
TORCH_CHECK(!tensors.empty(), "vstack expects a non-empty TensorList");

std::vector<at::Tensor> processed;
processed.reserve(tensors.size());

for (const auto& t : tensors) {
if (t.dim() == 0) {
processed.push_back(t.reshape({1, 1}));
} else if (t.dim() == 1) {
processed.push_back(t.unsqueeze(0));
} else {
processed.push_back(t);
}
}

return at::cat(processed, 0);
}
#include <ATen/core/TensorBody.h>
#include <ATen/ops/vstack.h>
#include <c10/core/ScalarType.h>
#include <c10/core/TensorOptions.h>
Comment on lines +25 to +34
TEST(ATenVStackTest, Basic2D) {
auto t1 = at::ones({2, 3}, at::kFloat);
auto t2 = at::zeros({2, 3}, at::kFloat);
std::vector<at::Tensor> tensors = {t1, t2};
auto result = at::vstack(tensors);

EXPECT_EQ(result.dim(), 2);
EXPECT_EQ(result.size(0), 4);
EXPECT_EQ(result.size(1), 3);
}

TEST(ATenVStackTest, EmptyListThrows) {
std::vector<at::Tensor> tensors = {};
ASSERT_THROW(at::vstack(tensors), std::exception);

@risemeup1111 risemeup1111 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

已完成首轮 review。当前还有需要修复后再合入的问题,具体见行级评论:vstack.h 需要补齐自包含依赖,新增 ATen_vstack_test.cc 也需要接入 CMake,确保 CI 能编译和运行这些用例。

P2 优先级:P2

非行级:当前 Check PR Template 失败,日志显示 PR Category、PR Types 和“是否引起精度变化”字段未按模板填写。请按仓库 PR 模板补齐这些字段,否则 CI 会继续阻塞。

Powered by Nyanpasu with gpt-5.5 xhigh, please check the suggestions carefully.

Comment thread paddle/phi/api/include/compat/ATen/ops/vstack.h Outdated
#include "gtest/gtest.h"
#include "torch/all.h"

TEST(ATenVStackTest, Basic2D) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 优先级:P1

这个新增测试文件还没有接入 test/cpp/compat/CMakeLists.txt。该目录是手动列举 cc_test(...) 目标的,当前 rg ATen_vstack_test test/cpp/compat/CMakeLists.txt 没有结果,所以 CI/ctest 不会编译或运行这里的用例,PR 描述里的 ctest ATen_vstack_test 在当前提交也不可复现。请把测试目标加入 CMake,例如:

cc_test(ATen_vstack_test SRCS ATen_vstack_test.cc)

youge325 added a commit to youge325/Paddle that referenced this pull request May 28, 2026
1. vstack.h: Add self-contained includes (cat.h, reshape.h, unsqueeze.h)
2. ATen_vstack_test.cc: Add explicit <vector> include, value assertions
   (allclose/equal checks for slice correctness), keep std::exception
   for ASSERT_THROW as c10::Error is unavailable in compat layer.
3. CMakeLists.txt: Register ATen_vstack_test target.

Review fixes:
- PaddlePaddle#79175 (comment)
- PaddlePaddle#79175 (comment)
- PaddlePaddle#79175 (comment)
- PaddlePaddle#79175 (comment)
- PaddlePaddle#79175 (review)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

@risemeup1111 risemeup1111 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

已复查当前提交。上轮提出的两个阻塞点均已处理:vstack.h 已补齐自包含依赖,ATen_vstack_test 也已接入 CMake;未发现新的需要阻塞合入的代码问题。

当前 Check approval 仍提示新增 cc_test 需要对应 RD 审批,这属于仓库审批规则,请以后续 CI 状态为准。

Powered by Nyanpasu with gpt-5.5 xhigh, please check the suggestions carefully.

@codecov-commenter

codecov-commenter commented May 28, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
⚠️ Please upload report for BASE (develop@034a838). Learn more about missing BASE report.

Additional details and impacted files
@@             Coverage Diff             @@
##             develop    #79175   +/-   ##
===========================================
  Coverage           ?   100.00%           
===========================================
  Files              ?         1           
  Lines              ?        11           
  Branches           ?         0           
===========================================
  Hits               ?        11           
  Misses             ?         0           
  Partials           ?         0           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

PaddlePaddle-bot

This comment was marked as outdated.

@risemeup1111 risemeup1111 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

已复查最新提交。此次变更仅移除了 vstack.h 中未使用的 include,此前关于头文件自包含和测试接入 CMake 的问题仍保持解决;未发现新的需要阻塞合入的代码问题。

Powered by Nyanpasu with gpt-5.5 xhigh, please check the suggestions carefully.

PaddlePaddle-bot

This comment was marked as outdated.

@PaddlePaddle-bot

PaddlePaddle-bot commented Jun 1, 2026

Copy link
Copy Markdown

🤖 Paddle-CI-Agent | ci_status_monitor | 2026-06-26 14:10:23 UTC+08:00

CI报告基于以下代码生成(30分钟更新一次):
PR commit: 6b126af | Merge base: 886db26 (branch: develop)


1 Required任务 : 42/48 通过

总执行(rerun次数) 总任务 ✅ 通过 ❌ 失败 ⏳ 运行中 ⏸️ 等待中 跳过
80(0) 80 74 4 0 0 1
任务 错误类型 置信度 日志
Coverage build 环境问题 Job
Distribute-stable-build / Build 环境问题 Job
Check approval 需要 Approval Job
Slice / Slice test 不稳定问题 Job

2 失败详情

🔴 Coverage build — 环境问题(置信度: 高)

错误类型: 环境问题 | 置信度: 高
分析器: 通用分析(fallback)
失败用例: 下载 Paddle.tar.gz

用例 错误摘要
Download paddle.tar.gz and update test branch wget 下载 coverage 产物约 2 分钟后以 exit code 4 退出,Build/coverage 步骤未开始

关键日志:

Downloading Paddle.tar.gz
wget -q --tries=5 --no-proxy https://paddle-github-action.bj.bcebos.com/PR/Paddle-coverage/${PR_ID}/${COMMIT_ID}/Paddle.tar.gz --no-check-certificate
##[error]Process completed with exit code 4.
Build / Check coverage build size requires approval 均 skipped
  • 根因摘要: BOS产物下载失败
    该 job 在拉取 Paddle.tar.gz 阶段失败,源码构建和覆盖率检查都没有执行。日志只有下载阶段 exit code 4,没有出现 PR 代码编译或测试错误,判断为 CI 产物下载/网络类异常。

修复建议:

  1. 环境问题,请 rerun

关联变更: PR 修改 ATen 兼容接口、C++ compat 单测和静态检查脚本;本 job 未进入源码构建阶段。

🔴 Distribute-stable-build / Build — 环境问题(置信度: 高)

错误类型: 环境问题 | 置信度: 高
分析器: 通用分析(fallback)
失败用例: 下载 Paddle.tar.gz

用例 错误摘要
Download paddle.tar.gz and merge target branch 下载 PR 产物阶段以 exit code 4 失败,后续 Build/打包/上传均 skipped

关键日志:

Download paddle.tar.gz and merge target branch
Downloading Paddle.tar.gz
##[error]Process completed with exit code 4.
Build / Packaging of products / Upload product to bos 均 skipped
  • 根因摘要: BOS产物下载失败
    该 job 在下载 Paddle.tar.gz 并合并目标分支前失败,真实构建步骤未运行。失败形态与 Coverage build 相同,均为 PR 产物下载阶段 exit code 4,判断为 CI 下载链路/产物访问异常。

修复建议:

  1. 环境问题,请 rerun

关联变更: PR 变更未进入该 job 的构建验证阶段,暂无证据指向源码问题。

🔴 Check approval — 需要 Approval(置信度: 高)

错误类型: 需要 Approval | 置信度: 高
分析器: 内置审批检测
失败用例: 无

关键日志:

Process completed with exit code 6.
analysis_status: approval_required
  • 根因摘要: 需要人工Approval
    该 Job 需要人工 Approval,完成审批后 CI 才会继续执行。

修复建议:

  1. 请通过人工审批

关联变更: 无

🟠 Slice / Slice test — 不稳定问题(置信度: 中)

错误类型: 不稳定问题 | 置信度: 中
分析器: 通用分析(fallback)
失败用例: Slice 性能基准

用例 错误摘要
Getitem - forward - Slice - Slice with Step - float16 - paddle 基线 0.0127795 ms,本次 0.01449984021484852 ms,相对性能提升 -0.13461717710775226,被判定为 doubt

关键日志:

Getitem - forward - Slice - Slice with Step - float16 - paddle perf: 0.01449984021484852 ms
Getitem - forward - Slice - Slice with Step - float16 - paddle: 基线数据0.0127795, 本次测试数据0.01449984021484852, 相对性能提升-0.13461717710775226, 评分级别doubt
slice测试失败, 存在性能下降case, 失败case性能变化: {'Getitem - forward - Slice - Slice with Step - float16 - paddle': -0.13461717710775226}
Exception: slice测试失败
  • 根因摘要: Slice性能基准单case波动
    失败集中在一个 slice benchmark case,绝对耗时差约 0.00172 ms。PR 变更文件集中在 ATen vstack 兼容接口、compat 单测和静态检查脚本,未修改 slice benchmark 或 slice 算子路径,因此当前更像性能门禁波动;若 rerun 后仍复现,再由性能侧确认基线或环境。

修复建议:

  1. 已知不稳定,请 rerun

关联变更: paddle/phi/api/include/compat/ATen/ops/vstack.h, test/cpp/compat/ATen_vstack_test.cc, ci/static_check.sh;未发现与 slice benchmark 直接相关的 PR 修改。

@youge325

youge325 commented Jun 3, 2026

Copy link
Copy Markdown
Contributor Author

/re-run all-failed

1 similar comment
@youge325

Copy link
Copy Markdown
Contributor Author

/re-run all-failed

PaddlePaddle-bot

This comment was marked as outdated.

youge325 added a commit to youge325/Paddle that referenced this pull request Jun 14, 2026
1. vstack.h: Add self-contained includes (cat.h, reshape.h, unsqueeze.h)
2. ATen_vstack_test.cc: Add explicit <vector> include, value assertions
   (allclose/equal checks for slice correctness), keep std::exception
   for ASSERT_THROW as c10::Error is unavailable in compat layer.
3. CMakeLists.txt: Register ATen_vstack_test target.

Review fixes:
- PaddlePaddle#79175 (comment)
- PaddlePaddle#79175 (comment)
- PaddlePaddle#79175 (comment)
- PaddlePaddle#79175 (comment)
- PaddlePaddle#79175 (review)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@youge325
youge325 force-pushed the add/vstack-20260528 branch from 522c89e to 3ac1171 Compare June 14, 2026 02:30
PaddlePaddle-bot

This comment was marked as outdated.

PaddlePaddle-bot

This comment was marked as outdated.

PaddlePaddle-bot

This comment was marked as outdated.

PaddlePaddle-bot

This comment was marked as outdated.

PaddlePaddle-bot

This comment was marked as outdated.

@youge325
youge325 force-pushed the add/vstack-20260528 branch from 6b126af to e808ab0 Compare June 28, 2026 11:38
PaddlePaddle-bot

This comment was marked as outdated.

@risemeup1111 risemeup1111 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

已复查当前提交,未发现需要阻塞合入的代码问题。vstack.h 已保持自包含,ATen_vstack_test 已接入 CMake,新增接口签名也与 libtorch 的 at::vstack(at::TensorList) 保持一致。

当前 Check approval 仍显示需要审批,请以后续 CI/审批状态为准。

Powered by Nyanpasu with gpt-5.5 xhigh, please check the suggestions carefully.

@PaddlePaddle-bot

PaddlePaddle-bot commented Jun 28, 2026

Copy link
Copy Markdown

🤖 Paddle-CI-Agent | ci_status_monitor | 2026-07-10 15:57:45 UTC+08:00

CI报告基于以下代码生成(30分钟更新一次):
PR commit: 7b53e0b | Merge base: 034a838 (branch: develop)


1 Required任务 : 41/43 通过

总执行(rerun次数) 总任务 ✅ 通过 ❌ 失败 ⏳ 运行中 ⏸️ 等待中 跳过
114(40) 74 71 2 0 0 1
任务 错误类型 置信度 日志
Coverage test 环境问题 Job
Check approval 需要 Approval Job

2 失败详情

🔴 Coverage test — 环境问题(置信度: 高)

分析器: 通用分析(fallback)

失败用例: 无(测试阶段未执行)

用例 错误摘要
Determine the runner 识别 runner 失败:Unknown runner name: paddle-CI,容器未启动,后续测试步骤 skipped

关键日志:

paddle-CI
Unknown runner name: paddle-CI
##[error]Process completed with exit code 1.
"docker stop" requires at least 1 argument.
  • 根因摘要: Coverage runner 命名未被识别

Coverage test.github/workflows/H-Coverage.yml:266-272 调用 determine_gpu_runner ${runner_name};日志中 $PWD 推导出的 runner_namepaddle-CI,外部 utils.sh 返回 Unknown runner name: paddle-CI。容器启动和测试步骤均未执行,docker stop 报错是 ${{ env.container_name }} 未设置导致的清理阶段次生错误。

修复建议:

  1. 环境问题,请 rerun;若重跑仍失败,需要 CI 维护侧检查 H-Coverage runner 工作目录命名或 utils.sh::determine_gpu_runnerpaddle-CI 的映射。

关联变更: PR 仅修改 paddle/phi/api/include/compat/ATen/*test/cpp/compat/*,未修改 .github/workflows/H-Coverage.yml 或 runner 选择逻辑。

🔴 Check approval — 需要 Approval(置信度: 高)

该 Job 需要人工 Approval,完成审批后 CI 才会继续执行。

  • 根因摘要: 需要人工审批

修复建议:

  1. 请通过人工审批

关联变更: 与 PR 代码变更无关。

@youge325
youge325 force-pushed the add/vstack-20260528 branch from e808ab0 to 2963892 Compare June 28, 2026 20:34

@risemeup1111 risemeup1111 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

已复查新提交,未发现需要阻塞合入的代码问题;此前关于 vstack.h 自包含和 ATen_vstack_test 接入 CMake 的问题仍保持解决。新增变更主要是在 test/cpp/fluid/fused/CMakeLists.txt 中补充若干 GPU fused 测试目标的链接依赖。

  • P3 优先级:P3 非行级:PR 描述当前只说明 at::vstack 兼容接口和 compat 单测,但 diff 还新增了 test/cpp/fluid/fused/CMakeLists.txtconditional_block_op/executor 依赖调整。请在 Description 里补一条类似“补充 fused GPU 测试目标的链接依赖以修复相关测试构建”的说明;如果这不是本 PR 必需的 CI 修复,建议拆到独立 PR,避免兼容接口变更和无关测试构建修复混在一起。
Powered by Nyanpasu with gpt-5.5 xhigh, please check the suggestions carefully.

PaddlePaddle-bot

This comment was marked as outdated.

@youge325

youge325 commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

/re-run all-failed

@youge325
youge325 force-pushed the add/vstack-20260528 branch from 2963892 to b17c01c Compare July 6, 2026 07:54

@liuhao2638 liuhao2638 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

已复查当前提交,上一轮提到的额外 fused CMake 依赖变更已从 PR diff 中移除;当前变更范围回到 at::vstack 兼容接口和对应 compat 单测。此前关于 vstack.h 自包含、ATen_vstack_test 接入 CMake 的问题仍保持解决,未发现新的需要阻塞合入的代码问题。

当前 Check approval 仍显示需要审批,请以后续 CI/审批状态为准。

Powered by Nyanpasu with gpt-5.5 xhigh, please check the suggestions carefully.

PaddlePaddle-bot

This comment was marked as outdated.

@youge325

youge325 commented Jul 8, 2026

Copy link
Copy Markdown
Contributor Author

/re-run all-failed

@youge325
youge325 force-pushed the add/vstack-20260528 branch from b17c01c to 7b53e0b Compare July 8, 2026 12:05

@PaddlePaddle-bot PaddlePaddle-bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 Paddle-CI-Agent | pr_review | 2026-07-08 20:10:24

📋 Review 摘要

PR 概述:新增 at::vstack C++ ATen 兼容接口,通过 0D/1D 预处理后复用 at::cat 沿 dim 0 拼接

变更范围paddle/phi/api/include/compat/ATen/test/cpp/compat/

影响面 Tag[Execute Infrastructure] [User Experience]

问题

级别 文件 概述
🟡 建议 test/cpp/compat/ATen_vstack_test.cc:139 PR 描述声称覆盖的 50x100、零维度、全一维度用例未在新增 C++ 测试中落地

📝 PR 规范检查

当前标题 Tag [Cpp API Compatibility] 不在 Paddle PR 模板枚举中,建议使用与本 PR Category 一致的官方 Tag。描述结构包含必填 section,可一并按下面内容收敛为可验证范围。

标题建议(可直接复制):

  • [Execute Infrastructure] Add at::vstack compat interface
PR 描述建议(点击展开,可直接复制)
### PR Category
Execute Infrastructure

### PR Types
New features

### Description
为 Paddle C++ ATen 兼容层新增 `at::vstack` 接口,用于将 TensorList 中的张量按 PyTorch vstack 语义转换后沿第 0 维拼接:
- 0D 张量 reshape 为 `(1, 1)`
- 1D 张量 unsqueeze(0) 为 `(1, N)`
- 2D+ 张量保持原 shape 并沿 dim 0 concat
- 空 TensorList 通过 `TORCH_CHECK` 抛出异常

主要变更:
- 新增 `paddle/phi/api/include/compat/ATen/ops/vstack.h`
-`paddle/phi/api/include/compat/ATen/Functions.h` 导出 `ATen/ops/vstack.h`
-`paddle/phi/api/include/compat/ATen/core/TensorBody.h` 补充 `c10::ArrayRef` include 和 `TensorList` alias
- 新增 `test/cpp/compat/ATen_vstack_test.cc` 并加入 `test/cpp/compat/CMakeLists.txt`

验证:
- 新增 C++ compat 单测覆盖 0D、1D、2D、1D+2D 混合、空输入异常,以及 `kFloat``kDouble``kInt``kLong` dtype。
- PCAT 跨框架对比测试见 PFCCLab/PaddleCppAPITest#65### 是否引起精度变化

总体评价

核心实现路径与 PyTorch vstack 的 0D/1D 预处理语义基本一致,未发现阻塞性代码问题。建议补齐或收敛测试覆盖声明后继续推进。

auto slice1 = result.slice(0, 2, 4);
EXPECT_TRUE(at::equal(slice0, t1));
EXPECT_TRUE(at::equal(slice1, t2));
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 建议 PR 描述声称新增 shape 覆盖包含 2D 大 shape (50, 100)、含零维度和全一维度,但当前新增的 8 个 C++ case 只覆盖标量、1D、普通 2D、1D+2D 混合、空列表和 dtype。

这会让 Review 和后续回归判断以为这些边界已经在本仓测试中守住。建议二选一:补齐对应 C++ case,例如 at::zeros({0, 3}) / at::ones({1, 1}) / {50, 100} 输入的 vstack 结果 shape 和内容断言;或者收敛 PR 描述,只声明当前实际覆盖的 case。

@risemeup1111 risemeup1111 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

已复查当前提交,变更范围仍集中在 at::vstack 兼容接口和对应 compat 单测;此前关于 vstack.h 自包含、ATen_vstack_test 接入 CMake 的问题仍保持解决,未发现新的需要阻塞合入的代码问题。

当前 Check approval 仍显示需要审批,请以后续 CI/审批状态为准。

Powered by Nyanpasu with gpt-5.5 xhigh, please check the suggestions carefully.

@youge325

youge325 commented Jul 9, 2026

Copy link
Copy Markdown
Contributor Author

/re-run all-failed

3 similar comments
@youge325

Copy link
Copy Markdown
Contributor Author

/re-run all-failed

@youge325

Copy link
Copy Markdown
Contributor Author

/re-run all-failed

@youge325

Copy link
Copy Markdown
Contributor Author

/re-run all-failed

@youge325

Copy link
Copy Markdown
Contributor Author

/re-run all-failed

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

Labels

contributor External developers

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants