Skip to content

perf(ci): reuse verified artifacts and parallelize acceptance - #472

Draft
harryisfish wants to merge 28 commits into
mainfrom
perf/ci-artifact-feedback
Draft

harryisfish wants to merge 28 commits into
mainfrom
perf/ci-artifact-feedback

Conversation

@harryisfish

@harryisfish harryisfish commented Nov 6, 2026 •

Copy link
Copy Markdown
Collaborator

Change

按 target 并行原生编译与组包,使用同 run 的不可变 artifact ID、源码及完整文件摘要绑定输入。分离 iOS build/accept,完善缓存和普通反馈取消策略,缺失或不匹配的输入直接失败。

原生目标按钮在 iOS 队列弹层关闭完成后恢复可用,用例等待这一状态再执行停止,保留全部延后取消、owner 回执、零额外调用、运行停止、重入及字节断言。启动失败现在额外保留实际退出码、有限系统错误码及固定日志标记,不上传原始启动日志或任意错误文本。

Verification

本轮启动诊断的行为、隐私、范围检查与 actionlint 通过,独立增量审查无新增问题。最终提交的完整检查与新 CI 待结果,保持 Draft。

上一提交 1bb5430 的 8 项本地检查和完整源码审查通过,Mac、native、Web、crypto 制品核验通过;完整 CI 因 C Node 在首个同步用例前退出 1 而失败。底层退出原因尚未确认,新增诊断用于保留后续证据。

1bb5430 的移动构建继续用于检验弹层候选,不代替最终提交的产品验收。未合并、发布或部署。保留既有原生公共目录预取隔离 P2,未核实实际原生出站。

@harryisfish harryisfish changed the title perf(ci): reuse verified builds and shorten acceptance paths perf(ci): reuse verified artifacts and parallelize acceptance Nov 6, 2026
Project the known driver error fields before the e2e report drops its cause.
Keep the original install error and the existing acceptance gate.
Keep the parallel product release DAG and both acceptance self-tests.
Reuse its existing caches and retain the filtered Product installation.
Record portable archive modes independently of the producer umask.
Keep source files unchanged and retain strict restored-mode validation.
Add a temporary manual mode that records bounded runner startup facts without rebuilding the product or accessing invitations. Keep the normal mobile jobs and acceptance gate unchanged.
Verify native deferred input cancellation through the queue sheet and
owner receipt before stopping active work. Preserve bounded startup
errors when the runner cannot produce a report.
Expect a releasable deferred input before cancellation and an explicit
unsafe-to-retry receipt after cancellation, matching the Core contract.
Use immutable control test executables to avoid Linux ETXTBSY races.
Capture structured iOS runner output for diagnosis while requiring the
canonical report for acceptance.
Keep the input target unavailable until iOS confirms the sheet has closed.
Wait for that state before the existing running-stop assertion. Preserve
bounded failure diagnostics and the full native acceptance flow.
Record fixed startup facts before preserving the original process-exit
failure. Upload only the controlled C Node JSON, with no raw log text.

This branch has not been deployed

No deployments
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.

1 participant