Repository navigation
Conversation
|
Thanks @garvrao80, this is the shape we agreed on #2031, and the guards against stale exclusions and aliases are a good addition. One change so it can land green: please put the checks still red on main on the exclusion list, each with the reason "red on main, #2031" and the PR that fixes it, so each comes off when its fix lands. #2098 has already fixed two of the eight. Of the rest, the two source-pin checks ( |
|
@garvrao80, the two source pins are ours to settle. We'll re-baseline both to main's bytes in one reviewed commit that says no device re-qualification is claimed, and drop |
|
Thanks @garvrao80. CI changed under this PR today, so here's what it costs now and what's needed to land it. In short, it's worth having: it catches the 246 named steps CI never ran. With main's cache it costs a few minutes on most pull requests, and there are four asks. What it costsThese are measured on hosted Linux runners, with this PR's
The restored rows used main's cache with test passes reused, as #2274 makes CI do. They also predate the tool that stops C and C++ from recompiling, so both columns should come down a little. A cold The saved cache grows from 0.84 GB to 1.87 GB a save, against GitHub's 10 GB for the repository. That fits, but fewer main saves stay in the budget. What's needed
Once 1 and 2 are in and the trace is done, it can go in the landing queue. |
Refresh the dense CUDA file hashes and the gradient-serving manifest against that main commit's exact bytes. The dense launch-sequence identity still matches and is retained. Drop ck_experts.cu: the manifest itself records that Flash Next learning reads separate affine4 weights and adjoints, not that serving kernel. Retain every other entry, hash mode, existing note and approval. This is a source-identity baseline only. No Living Weights device re-qualification is claimed; the existing HELD obligations remain owed. No serving kernels, learner arithmetic or runtime defaults change. T520 / #2095. Both host pin steps are supplied unchanged and must pass in an idle permitted window before landing; device gates remain the lead's.
Refresh the dense CUDA file hashes and the gradient-serving manifest against that main commit's exact bytes. The dense launch-sequence identity still matches and is retained. Drop ck_experts.cu: the manifest itself records that Flash Next learning reads separate affine4 weights and adjoints, not that serving kernel. Retain every other entry, hash mode, existing note and approval. This is a source-identity baseline only. No Living Weights device re-qualification is claimed; the existing HELD obligations remain owed. No serving kernels, learner arithmetic or runtime defaults change. T520 / #2095. Both host pin steps are supplied unchanged and must pass in an idle permitted window before landing; device gates remain the lead's.
Refresh the dense CUDA file hashes and the gradient-serving manifest against that main commit's exact bytes. The dense launch-sequence identity still matches and is retained. Drop ck_experts.cu: the manifest itself records that Flash Next learning reads separate affine4 weights and adjoints, not that serving kernel. Retain every other entry, hash mode, existing note and approval. This is a source-identity baseline only. No Living Weights device re-qualification is claimed; the existing HELD obligations remain owed. No serving kernels, learner arithmetic or runtime defaults change. T520 / #2095. Both host pin steps are supplied unchanged and must pass in an idle permitted window before landing; device gates remain the lead's.
|
@garvrao80, an update on ask 3 (the file-read trace). It's settled on our side. We traced a cold So what's left is yours: ask 1 (the rebase) and ask 2 (guarding the two-minute |
45162da to
58bfb78
Compare
…an't see a name added since It walks zig, docs, tools and .github for names Windows can't check out. Those directory listings aren't inputs the build knows of, so since pull requests reuse main's test passes (#2274), a pull request that adds such a name would reuse the pass and stay green until main's own run. Found by tracing what every run in test-host opens (the review of #2095): of the runs the build can skip, this is the only one that reads tracked paths it doesn't declare; the others declare theirs in zig/build/test_reads.zig.
…an't see a name added since It walks zig, docs, tools and .github for names Windows can't check out. Those directory listings aren't inputs the build knows of, so since pull requests reuse main's test passes (#2274), a pull request that adds such a name would reuse the pass and stay green until main's own run. Found by tracing what every run in test-host opens (the review of #2095): of the runs the build can skip, this is the only one that reads tracked paths it doesn't declare; the others declare theirs in zig/build/test_reads.zig.
|
/atc exchange 4659daa814b96b2b72c65474fef9b39704cbe31fab546e38f616b4fc0a2a626f |
What this changes
Use
zig build -Dfixed-cpu test-host --test-timeout 20min Linux no-GPU CI, preserving main's cache restore, restat and save policy. The aggregate collectstest,test-*andcheck-*after build registration, including compile-only checks. It rejects empty named checks, stale exclusions and aliases that would run excluded work.Run the graph regression suite only when
build.zig,zig/build/host_tests.zigortools/zig/host_tests_test.pychanges. When Git cannot resolve a comparison base, run the suite. The Linux job retains a 60-minute cap and a 20-minute per-test timeout for the cold DeepSeek enumeration.964f98b0ba640dee5c139b3d567e597964373bca. Merged main into the published branch to pick up the fixture fixes.atc overlap --json: incomplete (pullFilesLimit,pullFilesUnavailable,timeLimit). The GitHub inventory covered 182 open PRs and 31 overlaps. No new conflicts relative to main. ATC reported abuild.zigoverlap with lfm3 CUDA: serve the block FP8 export weight-only and the MLX 4-bit export as stored (stacked on #1508) #1634; the conflict hunk is identical on the pinned main and this branch.Reviewed exclusions
Two optional xgrammar checks need a separate checkout and flag.
check-release-pathsruns in its own CI job. Qwen27 residency (#2331) and GLM snapshots (#2403) passed on pinned main and are now part oftest-host. The former reported 60 passed and 2 skipped; the latter passed all 21 tests.Each remaining temporary exclusion failed on pinned Linux main. Remove the entry and its matching graph fixture entry when the repair lands and the named check passes.
test-exl3-prompt-hostb32initializer. Tracked in #2094.test-qwen35-draft-frame-host,test-qwen35-frame-invalidation-hostzig/qwen35_draft_frame_host.zig:239becausecuda_draft_tree.nodesnow returns an error union. The draft-frame step also has the same problem atzig/qwen35_draft_equality.zig:140. The previous Linux revision aborted inaffine4_kernels.zig:249through the recording fixture's uninitializedseg_fn. Tracked in #2031.test-qwen35-draft-trees-hostzig/qwen35_draft_equality.zig:140for the same draft tree return type change. Tracked in #2031.test-qwen27-prompt-rows-hosterror.InvalidEnvironmentand got success. Pinned main reports 12 passed and 1 failed. Tracked in #2031.test-qwen-serving-hostd21cd8152c54, expected265a34f9f0ae. Tracked in #2031.test-gradient-servingzig/src/cuda/aot.zig. Tracked in #2031.test-cluster-loader-hostcanon, whichzig/src/cluster/plan.zignow uses. Tracked in #2031.test-gemma4-affine-hostaffine_mmSHA-256 changed again after #2409. Actualc959eb1f5ac8, expecteda91a353981c4. Pinned main reports 138 passed, 6 skipped and 1 failed. Tracked in #2031.The maintainer's hosted trace found no additional tracked-file declarations needed for the new checks. The inherited portable-names case was fixed separately in #2311.
Checks on this head
5cf22489dfc9a01f25bcbbd058be534ac3c37f52.python3 tools/zig/lean_check.py: 116 inherited findings on the base and head, 0 new.zig fmt --check build.zig zigandgit diff --checkpassed.python3 -m unittest discover -s tools/zig -p host_tests_test.py -vpassed 9/9. The configured-Dfixed-cpugraph reaches all 418 eligible checks, 540 run steps and 536 compile steps, with zero guard failures. The workflow guard previously passed 12 cases covering both event types, watched paths, deletion and missing bases. The wider local sweep reproduced the three additional failures later verified directly on main, then aborted on WSL storage I/O errors. The focused tests and configured graph completed.Receipt
n/a for inference. This changes build-graph registration, Linux CI, documentation and graph tests. Local validation uses Zig 0.17.0 on Linux x86_64 (WSL). GPU toolchain, checkpoint, token exactness, speed and weight licensing do not apply.
Checklist