Skip to content
This repository was archived by the owner on Aug 12, 2026. It is now read-only.
This repository was archived by the owner on Aug 12, 2026. It is now read-only.

Approve CDT++ v1.0.0 release readiness #90

Description

@acgetchell

Summary

Approve CDT++ v1.0.0 as ready for the final publish-and-archive operation.

This is the release-readiness umbrella. It starts after #96 and must close before #97. Issue #97 alone owns creating the final tag and release, verifying the DOI and artifacts, closing the last tracker, and archiving the repository.

Current release contract

  • Preserve the supported 2+1-dimensional spherical CDT implementation as an independent C++23 reference for causal-triangulations.
  • Preserve the complete supported 3D ergodic move set audited in Audit and independently validate all 3D CDT ergodic moves #106.
  • Keep deterministic single-threaded fixtures as the canonical step-by-step oracle.
  • Retain only the explicitly supported CGAL/oneTBB parallel boundary from Restore and validate multithreaded C++ support #88; no concurrent MCMC mutation is implied.
  • Publish the compact versioned fixtures, schemas, raw results, named tolerances, explicit transition cases, and manifests from Publish deterministic C++ reference fixtures for Rust comparison #94.
  • Provide the lightweight local/offline C++/Rust comparison harness from Build a local, offline C++/Rust comparison harness #104 without ML, hosted-service, credential, or network requirements.
  • Preserve the opt-in CGAL/Qt viewer and reproducible repository-owned hero artifact from Restore the Qt viewer and reproducible artifact generation #98.
  • Preserve the manifested initial-state workflow: initialize --output writes an initial-triangulation .off/.off.meta pair, and cdt --input PATH validates that exact pair before starting a new Metropolis-Hastings run with a new transition seed.
  • Treat that manifested pair as the archival input boundary for a future causal-triangulations native importer. The Rust side should validate the pair and reconstruct its own invariant-bearing representation; CDT++ does not add a second converter or claim that its CGAL payload is generic mesh OFF.
  • Require one clean-checkout build/test contract, enforced release gates, a validated generated documentation site, synchronized metadata, and a complete archival handoff.
  • Add no scientific capability beyond the completed supported 2+1-dimensional move set.

Remaining readiness path

Follow the native GitHub dependency graph:

  1. Finish Restore and validate multithreaded C++ support #88.
  2. Publish the bounded reference fixtures and manifests in Publish deterministic C++ reference fixtures for Rust comparison #94.
  3. Complete Restore the Qt viewer and reproducible artifact generation #98 and Build a local, offline C++/Rust comparison harness #104.
  4. Finalize the archival documentation site in Validate and finalize the archival documentation site #114.
  5. Audit and enforce release gates in Audit and enforce the v1.0.0 build and CI release gates #95.
  6. Finalize documentation and metadata in Prepare v1.0.0 documentation, metadata, and archival handoff #96.
  7. Complete and merge the initialize to cdt --input handoff, integration test, and user/reproducibility/reference documentation required here.
  8. Approve readiness here.
  9. Execute publication and archival in Publish CDT++ v1.0.0 and verify the citable release #97.

Acceptance criteria

  • Every open v1.0.0 implementation, verification, tooling, and documentation issue other than Publish CDT++ v1.0.0 and verify the citable release #97 is closed.
  • The supported C++23 platform/compiler matrix and all required checks are green at the proposed release commit.
  • The complete supported move set and scientific invariants are backed by Audit and independently validate all 3D CDT ergodic moves #106 and the deterministic cross-language contract in Publish deterministic C++ reference fixtures for Rust comparison #94.
  • Exact combinatorial fields, named numerical tolerances, explicit deterministic transitions, one bounded end-to-end reference run, and complete provenance are versioned and reproducible.
  • Randomized CGAL results and heuristic estimators are documented without presenting random topology counts as exact scientific oracles.
  • The Restore and validate multithreaded C++ support #88 concurrency boundary, deterministic single-thread behavior, and existing scaling evidence are documented without overstating trajectory reproducibility.
  • The local Python harness reproduces stored comparison summaries offline and contains no ML or hosted experiment requirement.
  • The Qt workflow regenerates the committed hero artifact from repository-owned inputs while the default build remains headless.
  • initialize --output and cdt --input complete the documented four-step initial-state workflow: generate the pair, validate and load it, start a new seeded CDT transition run, and prove the cross-executable path in CTest.
  • cdt --input accepts only a manifested initial-triangulation, rejects construction-option conflicts plus checkpoint/final artifacts, validates payload and causal metadata, reconstructs the manifold, and records the source seed, initialization stream, placement fingerprint, and topology fingerprint in evolved provenance.
  • The docs distinguish initial-state loading from checkpoint resume, show how to generate many independently seeded starting states, and place the future causal-triangulations importer direction in reference/README.md rather than presenting it as a current top-level feature.
  • Release notes, README, API documentation, CITATION.cff, REFERENCES.md, version metadata, limitations, security/support boundary, successor link, and archival instructions agree.
  • Publish CDT++ v1.0.0 and verify the citable release #97 has a complete final sequence for tag, release, DOI/artifact verification, final issue closure, and repository archival.
  • No 3+1-dimensional work, broad architecture rewrite, comprehensive new stochastic study, unrelated performance program, or other out-of-scope feature is included.

Lifecycle

Close #90 only as the readiness approval for #97. Do not tag, publish, or archive from this issue.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions