The GitHub Actions job "CI" on tvm-ffi.git/2026-02-27/recursive-hash has failed. Run started by GitHub user junrushao (triggered by junrushao).
Head commit for run: 036868664418f2dafb73ccc6745231b53db92a5b / Junru Shao <[email protected]> test(python): add comprehensive RecursiveHash test suite Architecture: - Adds two new reflected test fixture classes (TestHash, TestCustomHash) to the testing module, registered via the C++ reflection system. TestHash exercises Hash(false) field exclusion; TestCustomHash exercises the __ffi_hash__ custom hook (hashes only `key`, ignores `label`). - Exposes RecursiveHash in the Python FFI API stub (_ffi_api.py) so tests can call it directly without private imports. Public Interfaces: - `tvm_ffi._ffi_api.RecursiveHash` added to TYPE_CHECKING stub and __all__. - `tvm_ffi.testing.TestHash` and `tvm_ffi.testing.TestCustomHash` exported as public test fixtures. UI/UX: - none Behavioral Changes: - No runtime behavioral changes; this is a test-only addition. Docs: - Test docstrings serve as specification documentation for hash semantics. Tests: - Executed: N/A (test-only commit; no build validation in this cherry-pick) - Result: 1033-line test file covering: - Primitives (int, float, bool, str, bytes, None, DataType, Device) - NaN canonicalization (all NaN payloads hash equal) - Signed-zero normalization (+0.0 == -0.0 for hashing) - Containers (Array, List, Shape, Map, Dict) including nesting - Reflected objects (TestIntPair, inherited fields, container fields) - Hash(false) / Compare(false) field exclusion - Custom __ffi_hash__ hook via TestCustomHash - Cycle detection (self-referential List/Dict) - Consistency law: RecursiveEq(a,b) => RecursiveHash(a)==RecursiveHash(b) - Aliasing invariants (shared vs duplicated references) - Recursion depth (127 and 1000 levels) - Shared DAG scaling (linear, not exponential) - Guard: __ffi_eq__ without __ffi_hash__ raises ValueError - Parametrized cyclic-structure mismatch tests Untested Edge Cases: - Cross-process hash stability (hashes may differ across builds/platforms) - Thread-safety of RecursiveHash under concurrent mutation Report URL: https://github.com/apache/tvm-ffi/actions/runs/22509381205 With regards, GitHub Actions via GitBox --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
