Fix: stop calling pypto's removed compile_for_test() - #880
Conversation
pypto#2230 replaced the testing-only compile_for_test() surface with the
public JITFunction.lower(), which runs the pass pipeline while staying
codegen-free, cache-free, and artifact-free -- exactly what these three
compile-only paths already wanted. The old name is gone, so they now die
with:
AttributeError: 'JITFunction' object has no attribute 'compile_for_test'
This is not deferrable. CI builds pypto from an unpinned shallow clone
of main (.github/actions/setup-ci-job/action.yml), so every PR picks the
removal up immediately, and decode_fwd's --smoke branch is what the sim
(a2a3sim) / sim (a5sim) jobs run.
Repo-wide there are exactly three call sites plus one comment that names
the old API; examples/, tests/ and golden/ never used it.
Verified compile-only on a2a3sim: decode_fwd --smoke emits 57 functions,
rope_qkv_regen 3, decode_layer_a8w8 45.
Note for whoever picks up sim (a5sim): with the smoke path reaching
further than before, decode_layer_a8w8 -p a5sim now surfaces a second,
pre-existing fault -- "Backend type already set to Ascend950, cannot
change to Ascend910B". main hits the compile_for_test AttributeError
first and never gets that far. It is unrelated to this change and is
left alone here.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (3)
📝 WalkthroughWalkthroughThe Qwen3 14B smoke, compile-only, and regeneration paths now call ChangesQwen3 direct lowering
Estimated code review effort: 2 (Simple) | ~5 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary
compile_for_test()surface with the publicJITFunction.lower(), which runs the pass pipeline while staying codegen-free, cache-free, and artifact-free — exactly what these three compile-only paths already wanted. The old name is gone, so they now die withAttributeError: 'JITFunction' object has no attribute 'compile_for_test'.main(.github/actions/setup-ci-job/action.yml), so every PR picks the removal up immediately, anddecode_fwd's--smokebranch is what thesim (a2a3sim)/sim (a5sim)jobs run.examples/,tests/andgolden/never used it.Verification
Compile-only on a2a3sim —
decode_fwd --smokeemits 57 functions,rope_qkv_regen3,decode_layer_a8w845.Known follow-up, not fixed here
With the smoke path now reaching further than before,
decode_layer_a8w8 -p a5simsurfaces a second, pre-existing fault:mainhits thecompile_for_testAttributeErrorfirst and never gets that far, which is whysim (a5sim)has been masking it. Confirmed by running both revisions locally on a5sim:mainAttributeError: ... no attribute 'compile_for_test'ValueError: Backend type already set to Ascend950 ...Unrelated to this change and left alone so the scope stays a one-line-per-file API rename.
sim (a5sim)is expected to stay red until it is addressed separately.