Skip to content

Fix TPMS surface discovery with Autograd 1.9 - #147

Open
kmarchais wants to merge 1 commit into
mainfrom
fix/explicit-tpms-surface-registry
Open

Fix TPMS surface discovery with Autograd 1.9#147
kmarchais wants to merge 1 commit into
mainfrom
fix/explicit-tpms-surface-registry

Conversation

@kmarchais

Copy link
Copy Markdown
Member

Summary

  • add an immutable, typed BUILTIN_SURFACES catalog containing every built-in TPMS surface exactly once
  • parameterize the exhaustive TPMS tests directly with those callables and retain readable pytest IDs
  • correct the five honeycomb_* annotations to reflect their NumPy array inputs and outputs

Root cause

Autograd 1.9.1 changed the signatures exposed by its imported sin and cos wrappers. They now appear to have three parameters, so the tests' inspect.getmembers() plus signature-length heuristic mistakenly classified them as Microgen TPMS surfaces and invoked them with (x, y, z).

Discovering the supported test matrix through module introspection was brittle because unrelated imported callables could enter it when dependency implementation details changed. The explicit BUILTIN_SURFACES tuple makes the exhaustive built-in catalog stable and intentional while leaving Tpms free to accept arbitrary user-provided callables.

Validation

  • repository pre-commit suite: passed
  • git diff --check: passed
  • focused exhaustive TPMS tests with Autograd 1.9.1: 128 passed
  • complete tests/shapes/test_tpms.py: 181 passed
  • full repository suite: 473 passed, 2 skipped

@kmarchais
kmarchais force-pushed the fix/explicit-tpms-surface-registry branch from 90ff995 to 9bb3dde Compare August 1, 2026 11:46
@kmarchais
kmarchais requested a review from chemiskyy August 2, 2026 16:51
@kmarchais
kmarchais marked this pull request as ready for review August 2, 2026 17:25
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