CDT++ 1.0.0
Causal Dynamical Triangulations in C++
Loading...
Searching...
No Matches
Changelog

All notable changes to CDT++ are documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

1.0.0 - 2026-08-11

Release summary

CDT++ 1.0.0 is the final planned feature release of the C++23 spherical 2+1-dimensional reference implementation.

  • Compatibility: The supported source boundary is C++23 with the published GCC, Clang, AppleClang, and MSVC matrix. The project does not promise a stable binary ABI or package-registry distribution.
  • Scientific corrections: The release completes and independently validates all five 2+1D moves, Metropolis-Hastings proposal ratios and atomic transitions, exact-predicate geometry boundaries, run-owned RNG streams, and causal persistence metadata.
  • Supported surface: The default build is headless; CGAL/oneTBB bulk Delaunay operations and the macOS Qt viewer are explicit opt-ins. Historical toroidal and higher-dimensional prototypes are excluded from the supported API.
  • Limitations: Seeds replay stochastic inputs, not necessarily fresh cospherical CGAL topology. Resumable checkpoints continue the identical Markov chain only on the recorded producer toolchain; they are restart artifacts rather than portable interchange files. Parallelism does not extend to Pachner moves or concurrent manifold access.
  • Migration: Active development and new work move to causal-triangulations. After the v1.0.0 GitHub and Zenodo handoff, CDT++ enters a maintenance-only stabilization window and becomes read-only only when the owner completes the archival gate.

Added

  • [breaking] Modernize Python experiment workflows def276a
  • [breaking] Add offline C++/Rust comparison harness 45b080e
  • Restore reproducible archival rendering 2662df9
  • [breaking] Expose reported Metropolis transitions 16d1c76
  • Add initial-state loading and checkpoint resume e1305d6

Changed

  • Expose shared artifact lifecycle helpers 2f3ba57
  • Evaluate Boost alternatives to GMP and MPFR 9a02c39
  • Harden backend evaluation probes d5c3b71
  • Format transition validation f183f07
  • Verify unknown moves preserve transition traces 70ab238
  • Expect portable producer paths on Windows 5a32b1d

Documentation

  • Clean up archival documentation references 703b474
  • Exclude PCG shim from generated reference 7e8734f

Fixed

  • Serialize Dependabot automation per pull request 7567372
  • Deduplicate CodeRabbit review requests by revision 7f23d53
  • Bind Dependabot auto-merge to reviewed revision 72fc5a1
  • Harden Dependabot review rearming on head updates 5d571c8
  • Authenticate CodeRabbit review requests as maintainer 375c9ea
  • Require reviewed Dependabot merges and refresh tooling 7c3a84b
  • Restore MPFR builds and fail closed on polling errors 1d2e667
  • Prevent stale vcpkg 9e8d033
  • [breaking] Preserve coincident causal identities 3f72a16
  • Harden persistence and vcpkg pin synchronization 3a66693
  • Canonicalize complete vertex-cell incidence 52f9a58
  • Bound incidence fingerprint canonicalization 307737c
  • Harden experiment and repository validation fb7e5b3
  • Harden cross-platform validation 6b4d012
  • Pin Python for sanitizer bootstrap 9181494
  • Refresh portable Python package checks 96baa21
  • Preserve local runs when Comet mirroring fails 9cadfe7
  • Harden portable harness validation da7ba14
  • Select the root vcpkg manifest 1c064fd
  • Restore vcpkg binary caching 2b27462
  • Track canonical rendering fixture 7078f69
  • Harden archival rendering contract 81d366e
  • Harden transition and documentation validation e955ee6
  • Queue approved Dependabot updates for auto-merge e63e32f
  • Enforce v1.0.0 release gates 94ed107
  • Fail fast and support Dependabot coverage 2107f20
  • Stabilize macOS viewer and coverage gates deb24ab
  • Harden checkpoint resume contracts 17bb7fb
  • Enforce exact checkpoint continuation 95754c4
  • Harden repository readiness contracts 2840437
  • Preserve canonical producer paths on Windows 026ba3f
  • Harden boundary validation and diagnostics 38be43d
  • Preserve complete subprocess diagnostics 94a0c77

Maintenance

  • Gate automatic merges on CodeRabbit review 8124227
  • Bump the github-actions group with 4 updates #134 55d192d
  • Bump the github-actions group with 2 updates #136 90a3ea6
  • Automate vcpkg tool pin sync 9631335
  • Bump the dependencies group with 3 updates #144 098822d
  • Stagger Dependabot update schedules 9cf5b9d
  • Bump cryptography from 49.0.0 to 50.0.0 #146 e23d3c4
  • Bump taiki-e/install-action #152 426edb8

1.0.0-rc3 - 2026-07-28

Added

  • Restore optional parallel insertion and removal d4dabbe
  • Add value-oriented move-run orchestration abfa888
  • [breaking] Add invariant-bearing move preparation e2f7d70
  • [breaking] Modernize the CGAL 6.2 integration boundary ae7a39b
  • [breaking] Finalize parallel triangulation support 862637a
  • [breaking] Publish deterministic C++ oracle fixtures ec53dfa

Changed

  • [breaking] Normalize public declarations under cdt a02a732
  • Make MoveAlways replay checks deterministic d7fa637
  • Own move-run callbacks by value f59c06f
  • Make seeded replay fixtures cross-platform 3c322ee
  • Make producer path assertion cross-platform 390adf3

Fixed

  • Generate GCC 16 reports with LCOV 2.5 324a2aa
  • Install LCOV documentation dependencies 42fd262
  • Support pkgx-backed IDE environments 3ce8780
  • Retain function data during LCOV capture 898a453
  • Bound GCC branch inconsistencies c7d6a35
  • Keep oneTBB out of ThreadSanitizer 35b241e
  • Harden parallel build and provenance 6ef7dd6
  • Resolve pkgx certificate bundles before vcpkg a123ab8
  • Restore CodeQL extraction and bound parallel builds 56f13cd
  • Require fresh fixture provenance 6972970
  • Stabilize cross-platform validation b0c3169
  • Stabilize Windows and Semgrep validation b282c0b
  • Stabilize cached builds and action policy validation 930238a
  • Enforce action policy on nested paths 745d402
  • Enforce action policy on shorthand steps 406a482

Maintenance

  • Suppress ShellCheck for Zsh path expansion 189cc0d
  • Bump actions/checkout from 7.0.0 to 7.0.1 397e0b4
  • Bump taiki-e/install-action from 2.83.2 to 2.83.4 30c83fd
  • Bump github/codeql-action/init from 4.37.0 to 4.37.1 fd04186
  • Bump github/codeql-action/analyze from 4.37.0 to 4.37.1 16d8fcd
  • Enforce pkgx-first pinned toolchains f01fca6
  • Streamline and harden supported build workflows e29f69a
  • Update v1.0.0-rc3 release date e8f45ea

Performance

  • [breaking] Avoid rebuilding caches during move validation f574f0f

1.0.0-rc2 - 2026-07-22

Fixed

  • Verify Zenodo delivery for the current tag 05a6e97

1.0.0-rc1 - 2026-07-22

Added

  • Persist verifiable stochastic run provenance ce90551

Fixed

  • [breaking] Enforce atomic moves and validated runtime state #111 4245ac0
  • [breaking] Make Metropolis transitions reversible and reproducible #112 1d7269c
  • Harden optional Python experiment lifecycle #113 31f95ab
  • Enforce causal ergodic move contracts bb53988
  • Restore sanitizer and coverage reliability f4c7df9
  • Harden ergodic move rejection cec15b5
  • Make runtime configuration header self-contained cef03b5

Maintenance

  • [breaking] Consolidate develop into main #100 2459016
  • Align repository status reporting with main #109 c37fa09
  • Add release tooling and repair coverage 1416708
  • Update docs/RELEASING.md 26196da