fix!: enforce CDT and backend invariants#120
Conversation
- Build open-boundary simulations from foliated CDT strips and validate regular per-slice configuration before simulation startup. - Validate topology in CdtTriangulation::with_topology before publishing wrapped backends. - Make TriangulationMut::clear and reserve_capacity fallible so unsupported or failed backend operations cannot silently succeed. - Add typed coordinate and reservation errors, and update docs and examples toward foliated CDT constructors. BREAKING CHANGE: Open-boundary CdtConfig now requires regular slice counts, run_simulation constructs foliated CDT strips instead of seeded or random raw Delaunay inputs, TriangulationMut::clear and reserve_capacity now return Result, and CdtTriangulation::with_topology validates topology before returning.
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #120 +/- ##
==========================================
+ Coverage 92.50% 92.52% +0.02%
==========================================
Files 19 19
Lines 8557 8661 +104
==========================================
+ Hits 7916 8014 +98
- Misses 641 647 +6
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (16)
WalkthroughThis PR introduces topology-aware CDT construction and validation, refactoring triangulation creation from seeded/random points to foliated CDT strips. Topology validation moves to constructor time via ChangesCDT Construction, Topology Validation, and Configuration
Backend Storage Mutation API Refactoring
Estimated code review effort🎯 4 (Complex) | ⏱️ ~50 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
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 |
🔴 Performance Regression DetectedPerformance Analysis ReportCDT Performance Analysis ReportGenerated: 2026-05-06T19:21:34+00:00 Summary
🔴 Performance Regressions
🟢 Performance Improvements
🆕 New Benchmarks
✅ Stable BenchmarksNo significant changes detected in 2 benchmarks. Performance analysis powered by Criterion.rs |
BREAKING CHANGE: Open-boundary CdtConfig now requires regular slice counts, run_simulation constructs foliated CDT strips instead of seeded or random raw Delaunay inputs, TriangulationMut::clear and reserve_capacity now return Result, and CdtTriangulation::with_topology validates topology before returning.