Skip to content

fix: end-to-end audit — repair source bugs and test suite#10

Merged
pmclSF merged 2 commits intomainfrom
test/coverage-gaps
Feb 16, 2026
Merged

fix: end-to-end audit — repair source bugs and test suite#10
pmclSF merged 2 commits intomainfrom
test/coverage-gaps

Conversation

@pmclSF
Copy link
Owner

@pmclSF pmclSF commented Feb 16, 2026

Summary

  • Fix 13 source modules with bugs found during end-to-end audit: broken read_off return type handling, exhausted iterator in count_points_in_block, missing numerical guards (EPSILON in CENICGDN), @tf.function graph-mode violations (tf.cond instead of Python if on tensors), removed @tf.function from dict-mutating entropy model methods, and fixed evaluation/training pipeline API mismatches
  • Repair 17 test files to match corrected source APIs, replace tautological assertions (assertIsNotNone) with meaningful shape/value/dtype checks, and expand coverage for constants, precision config, and scale quantization
  • Register missing slow pytest marker, add conftest.py collection filter, and update CI workflow

Test plan

  • Full test suite passes: 213 passed, 0 failures
  • Verified CENICGDN epsilon guard doesn't change test outputs (beta initialized to ones, so norm is never near zero in tests — guard prevents NaN during training)
  • Verified tf.cond replacement in _augment produces identical behavior to Python if in eager mode
  • No regressions in model transforms, entropy model, data loader, or training pipeline tests

🤖 Generated with Claude Code

pmclSF and others added 2 commits February 15, 2026 23:18
End-to-end audit of all 28 source modules found and fixed bugs across
13 files. Key fixes:

- ds_select_largest: count_points_in_block consumed iterator before counting
- cli_train: read_off returns MeshData, not tuple; handle hp=None
- evaluation_pipeline: .filename on tensor; missing dict keys; report interface
- data_loader: read_off return type; augmentation before voxelization;
  tf.cond for @tf.function graph-mode compatibility
- model_transforms: add output projection; add EPSILON guard in CENICGDN
- entropy_model: remove @tf.function from dict-mutating methods
- octree_coding: replace tf.equal/tf.shape in Python conditionals
- map_color: guard against missing end_header in PLY files
- training_pipeline: fix model API integration and loss computation
- mp_report: fix generate_report interface for EvaluationResult dicts

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Repair 17 broken test files to match fixed source APIs, replace
tautological assertions with meaningful checks, and expand coverage
for constants, precision_config, and scale quantization.

- Fix API mismatches after source bug fixes (read_off, evaluation pipeline,
  training pipeline, entropy model, model transforms)
- Replace assertIsNotNone with shape/value/dtype assertions
- Add conftest filter for tf.test.TestCase.test_session collection
- Register missing pytest slow marker in pytest.ini
- Add test_parallel_process and test_colorbar to CI workflow
- Expand test_performance with constants, precision, and optimization tests

All 213 tests pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@pmclSF pmclSF merged commit f68d4a8 into main Feb 16, 2026
4 checks passed
@pmclSF pmclSF deleted the test/coverage-gaps branch February 16, 2026 00:40
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