docs: CLAUDE.md aktualisiert — Testzähler, Doku-Karte, geometry-central
- Testzähler korrigiert: 158 CGAL / 2 skips → 173 CGAL / 1 skip - Neue Sektion "Key documentation for mathematical context": Tabelle der wichtigsten Nachschlagewerke für mathematische Aufgaben (discrete-conformal- theory.md, geometry-modes.md, geometry-central-comparison.md, etc.) - Kompakter geometry-central Absatz: was es ist, was es nicht hat, warum Kreuz-Validierung sinnvoll ist — Scope-Information für neue Sessions - Finder-Duplicates-Quirk entfernt (längst behoben) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
23
CLAUDE.md
23
CLAUDE.md
@@ -239,11 +239,30 @@ Two jobs in `.gitea/workflows/cpp-tests.yml`:
|
|||||||
|
|
||||||
Runner: `eulernest` — self-hosted Raspberry Pi, ARM64, Ubuntu 22.04. Docker image: `git.eulernest.eu/conformallab/ci-cpp:latest`. `test-cgal` needs `test-fast` to pass first (`needs: test-fast`).
|
Runner: `eulernest` — self-hosted Raspberry Pi, ARM64, Ubuntu 22.04. Docker image: `git.eulernest.eu/conformallab/ci-cpp:latest`. `test-cgal` needs `test-fast` to pass first (`needs: test-fast`).
|
||||||
|
|
||||||
Expected results: **36 non-CGAL tests pass**, **158 CGAL tests pass, 2 skipped** (intentional `GTEST_SKIP` stubs for genus-2 homology and analytic HyperIdeal Hessian — these are Java features deferred to Phase 9).
|
Expected results: **36 non-CGAL tests pass**, **173 CGAL tests pass, 1 skipped** (intentional `GTEST_SKIP` stub for analytic HyperIdeal Hessian — deferred to Phase 9b).
|
||||||
|
|
||||||
|
## Key documentation for mathematical context
|
||||||
|
|
||||||
|
When working on math-heavy tasks, read these before reasoning from scratch:
|
||||||
|
|
||||||
|
| Question | Document |
|
||||||
|
|---|---|
|
||||||
|
| What is the mathematical problem this library solves? | `doc/math/discrete-conformal-theory.md` |
|
||||||
|
| What are the three geometry modes and how do they differ? | `doc/math/geometry-modes.md` |
|
||||||
|
| How does conformallab++ relate to geometry-central (CMU)? | `doc/architecture/geometry-central-comparison.md` |
|
||||||
|
| What analytic results can be used to validate correctness? | `doc/math/validation.md` |
|
||||||
|
| Which Java classes are ported, which are planned? | `doc/roadmap/java-parity.md` |
|
||||||
|
| What does each processing function require/provide? | `doc/api/contracts.md` |
|
||||||
|
|
||||||
|
**geometry-central** (Keenan Crane, CMU) implements the same discrete conformal
|
||||||
|
equivalence problem (Gillespie, Springborn & Crane, SIGGRAPH 2021) but uses
|
||||||
|
Ptolemaic flips on intrinsic triangulations instead of Newton on the original mesh.
|
||||||
|
It has no period matrix, holonomy, or spherical geometry mode.
|
||||||
|
The shared mathematical core (Springborn 2020) means cross-validation is meaningful.
|
||||||
|
See `doc/architecture/geometry-central-comparison.md` for the full comparison.
|
||||||
|
|
||||||
## Known quirks
|
## Known quirks
|
||||||
|
|
||||||
- **Finder duplicate files**: `include/` contains files like `clausen 2.hpp`, `hyper_ideal_utility 2.hpp` — macOS Finder duplicates. Always use the canonical name without ` 2`. These should be deleted.
|
|
||||||
- **`test-fast` also runs stubs**: `conformallab_tests` (non-CGAL) contains `GTEST_SKIP`-based stubs for functionals that need CGAL. This is intentional — those tests document what was in the Java port scope but requires the CGAL mesh type.
|
- **`test-fast` also runs stubs**: `conformallab_tests` (non-CGAL) contains `GTEST_SKIP`-based stubs for functionals that need CGAL. This is intentional — those tests document what was in the Java port scope but requires the CGAL mesh type.
|
||||||
- **Boost is header-only**: CGAL 6.x uses only Boost headers (`Boost.Config`, `Boost.Graph`). No compiled Boost libraries are needed. `find_package(Boost REQUIRED)` only locates the include path.
|
- **Boost is header-only**: CGAL 6.x uses only Boost headers (`Boost.Config`, `Boost.Graph`). No compiled Boost libraries are needed. `find_package(Boost REQUIRED)` only locates the include path.
|
||||||
- **`main` branch is protected** on `origin` (Gitea). Push to `dev`, then merge via pull request. Codeberg `main` can be pushed to directly.
|
- **`main` branch is protected** on `origin` (Gitea). Push to `dev`, then merge via pull request. Codeberg `main` can be pushed to directly.
|
||||||
|
|||||||
Reference in New Issue
Block a user