docs: CLAUDE.md — vollständige Dokumentations-Karte (23 Dokumente, v0.7.0)
Abschnitt "Key documentation" → "Documentation map": - 6 Zeilen → 23 Dokumente in 6 kategorisierten Tabellen (Mathematik, Architektur, API, Konzepte, Roadmap, Tutorials) - Jede Tabelle als Frage→Dokument-Format für schnellen Lookup - geometry-central-Kontext auf eigene Sektion verschoben + GC-Roadmap-Link Neuer Abschnitt "Release state": - v0.7.0 Tag dokumentiert - CITATION.cff, CONTRIBUTING.md, scripts/try_it.sh, cmake --install erwähnt Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
77
CLAUDE.md
77
CLAUDE.md
@@ -241,25 +241,84 @@ Runner: `eulernest` — self-hosted Raspberry Pi, ARM64, Ubuntu 22.04. Docker im
|
||||
|
||||
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
|
||||
## Release state
|
||||
|
||||
When working on math-heavy tasks, read these before reasoning from scratch:
|
||||
Current release: **v0.7.0** (tag on `origin/dev`, PR to `main` open).
|
||||
Phase 7 is complete. Phase 8 (CGAL package) is next.
|
||||
|
||||
Root-level files added at v0.7.0:
|
||||
- `CITATION.cff` — machine-readable citation (Sechelmann 2016, Springborn 2020, Bobenko–Springborn 2004)
|
||||
- `CONTRIBUTING.md` — short root-level pointer to `doc/contributing.md`
|
||||
- `scripts/try_it.sh` — one-script quickstart: build → 209 tests → example run
|
||||
- CMake install target: `cmake --install build --prefix /usr/local` → headers land in `include/conformallab/`
|
||||
|
||||
## Documentation map
|
||||
|
||||
23 documents across 6 categories. Read the relevant one before reasoning from scratch
|
||||
— do not hallucinate content that is already written down.
|
||||
|
||||
### Mathematics & theory
|
||||
|
||||
| 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` |
|
||||
| What problem does this library solve mathematically? | `doc/math/discrete-conformal-theory.md` |
|
||||
| How do the three geometry modes differ (Euclidean/Spherical/HyperIdeal)? | `doc/math/geometry-modes.md` |
|
||||
| What analytic invariants can be used to validate correctness? | `doc/math/validation.md` |
|
||||
| What are the exact ctest commands with expected terminal output? | `doc/math/validation-protocol.md` |
|
||||
| Which papers are referenced by which header? | `doc/math/references.md` |
|
||||
| How does conformallab++ compare to libigl, CGAL, geometry-central, pmp-library? | `doc/math/software-landscape.md` |
|
||||
| What is unique about conformallab++ (novelty, target audience)? | `doc/math/novelty-statement.md` |
|
||||
|
||||
### Architecture & design
|
||||
|
||||
| Question | Document |
|
||||
|---|---|
|
||||
| Full pipeline diagram and data-flow overview | `doc/architecture/overall_pipeline.md` |
|
||||
| Directory tree, build targets, file organisation | `doc/architecture/project-structure.md` |
|
||||
| Key architectural decisions and their rationale | `doc/architecture/design-decisions.md` |
|
||||
| Detailed comparison with geometry-central (CMU): overlap, adoption, scientific value | `doc/architecture/geometry-central-comparison.md` |
|
||||
|
||||
### API & extension
|
||||
|
||||
| Question | Document |
|
||||
|---|---|
|
||||
| All 24 public headers with descriptions | `doc/api/headers.md` |
|
||||
| Full pipeline API for all three geometries | `doc/api/pipeline.md` |
|
||||
| What does each processing unit require/provide (contracts)? | `doc/api/contracts.md` |
|
||||
| How to add a new functional / geometry mode / port from Java | `doc/api/extending.md` |
|
||||
| All 28 test suites, 173+36 tests, individual counts | `doc/api/tests.md` |
|
||||
| Phase 8 CGAL package design + Declarative YAML pipeline spec | `doc/api/cgal-package.md` |
|
||||
|
||||
### Concepts & specs
|
||||
|
||||
| Question | Document |
|
||||
|---|---|
|
||||
| Declarative YAML pipeline: token vocabulary, 5 examples, validation algorithm | `doc/concepts/declarative-pipeline.md` |
|
||||
|
||||
### Roadmap & porting
|
||||
|
||||
| Question | Document |
|
||||
|---|---|
|
||||
| Phases 1–10 with status and sub-tasks | `doc/roadmap/phases.md` |
|
||||
| Which Java classes are ported, which are planned, which are skipped? | `doc/roadmap/java-parity.md` |
|
||||
|
||||
### Tutorials & onboarding
|
||||
|
||||
| Question | Document |
|
||||
|---|---|
|
||||
| Build modes, single-test invocation, CLI, Docker image rebuild | `doc/getting-started.md` |
|
||||
| Step-by-step: port the Inversive Distance functional (Phase 9a template) | `doc/tutorials/add-inversive-distance.md` |
|
||||
| Language policy, test standards, release flow | `doc/contributing.md` |
|
||||
|
||||
### geometry-central context
|
||||
|
||||
**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.
|
||||
Full analysis: `doc/architecture/geometry-central-comparison.md`.
|
||||
Optional adoption roadmap (GC-1/2/3): `doc/roadmap/phases.md` (Optional section).
|
||||
|
||||
## Known quirks
|
||||
|
||||
|
||||
Reference in New Issue
Block a user