This roadmap outlines the development phases from the initial beta through the 1.0 general release.
Goal: Implement even_collars and establish professional documentation.
Released: 2026-03-08 | Git Tag: release_0_99_0 | Distribution: PyPI
- Symmetric Logic: Enable equatorial hyperplane alignment for S² and S³.
- Sphinx Framework: Initialize multi-format documentation with MyST-Parser.
Released: 2026-03-14 | Git Tag: release_0_99_3 | Distribution: PyPI
- PyPI Branding: Standardized project identity and mathematical notation for web rendering.
- Scaling Parity: Verified
$O(N^{0.6})$ scaling parity with original MATLAB research.
Goal: Finalize NumPy docstrings and establish bibliographic consistency.
- Docstring Audit: Standardize NumPy Google-style docstrings across all modules.
- Bibliographic Parity: Align bibliography with canonical PhD thesis keys [Leo07].
Released: 2026-03-17 | Git Tag: release_0_99_4 | Distribution: PyPI
- Porting Guide: Document changes from MATLAB to Python.
- Quality Checks: Automated Aussie -ize orthography enforcement.
Released: 2026-03-21 | Git Tag: release_0_99_6 | Distribution: PyPI
- Release Automation: Introduced
release/suite to automate build-upload cycles. - Governance: Added Roles & Responsibilities matrix to the Maintenance Guide.
- Bibliography Consistency: Manual audit to align all internal citation keys.
Goal: Harden CI infrastructure, implement automated quality guardrails, achieve 100% project-wide coverage, and verify dimensional robustness.
Released: 2026-03-22 | Git Tag: release_0_99_7 | Distribution: PyPI
- Pre-commit Layer: Formalized the first tier of "Defense in Depth" (Item 1-2).
- Zero-Warning Policy: Integrated
make html SPHINXOPTS="-W"intovalidation/verify_all.pyto prevent documentation drift. - Environment Isolation: Improved
validation/verify_all.pyto manage PATH for subprocesses across diverse virtual environments.
Released: 2026-04-03 | Git Tag: release_0_99_8 | Distribution: PyPI
- JOSS Submission: Initiate the peer-review process by submitting the voice-modeled
paper.mdandpaper.bibartifacts to the Journal of Open Source Software. This establishes the project's scholarly identity alongside the 2007 PhD thesis [Leo07] and 2024 JAS paper [Leo24-JAS]. - Automation Coverage Plan: Achieved 100% coverage on the script automation hub (
release/,validation/) using modular refactoring and thetest_ci_scripts.pysuite. - Verified Deployment: Confirmed stability of the
build_dist.pyatomic backup and robustdoc/conf.pymocking across all CI runners. - Technical Symmetry Audit: Reviewed historical and modern Sphinx configurations for project-wide consistency.
- Rename COPYING to LICENSE and adopt PEP 639: Renamed
COPYING→LICENSE; updatedpyproject.tomlwithlicense = "MIT"andlicense-files = ["LICENSE"]. - Rename
doc/internal/todoc/maintainer/: Reflected that these are public maintainer-facing docs. Updated all internal references.
Released: 2026-04-09 | Git Tag: release_0_99_9 | Distribution: PyPI
- Histogram Logic Alignment: Back-ported "Index Rotation" (longitude lookup fix) into
eqsp/histograms.pyand implemented high-$N$ wrap-around tests. Removed legacylookup_table()in favor of domain-translatednp.searchsorted()for 100% coverage. - Coverage Deep-Dive: Reached 100% functional coverage in all core maintenance and release scripts (
release/,validation/) and core algorithm edge cases (e.g.,$dim=1$ scalar paths). - Higher-Dimension Robustness: Verified recursive partitioning for
$S^4$ and$S^5$ , ensuring coordinate bounds and unit-norm properties hold for$dim \ge 4$ . - Benchmark Alignment: Synchronized Python benchmark logic, warm-up phases, and
$N_{max}$ parameters with the original MATLAB EQSP Toolbox. Implemented binary scaling (1-2-5) for symmetric benchmarks. - Equatorial Symmetry Expansion: Formalized
even_collarssupport across the entire public API (includingeq_find_s2_region). - Verification Hardening: Implemented robust venv isolation in
validation/verify_all.pyand correctedsradiusdimension logic. - Histogram Boundary Safety: Added index clamping to
lookup_s2_regionto preventIndexErrorat poles. - CLI Standardization: Refined
--even-collarsflag logic for intuitive explicit opt-in and addedos.pathsepportability. - Local Config & Environment Standardization: Isolated AI assistant skills and standardized documentation with generic placeholders (
VENV) for improved portability and privacy. - Documentation Parity: Conducted a thorough audit of the benchmark suite documentation to ensure
$S^2$ and$S^3$ default dimensions are explicitly noted across the User and Maintenance guides. - Doc Re-organization: Refactored guides to use alphabetical appendices and renamed the Migration Guide to "Migration from MATLAB" with integrated performance baselines.
Goal: Finalize production-ready artifacts, incorporate community feedback, and establish a long-term strategic evolution.
Released: 2026-04-21 | Git Tag: release_1_0b1 | Distribution: PyPI / GitHub
- Feedback Hub: Integrated a sidebar CTA and global version warning banner into the documentation.
- Beta Feedback Channel: Added a specialized GitHub Issue template for verification reports and success stories.
- Code of Conduct: Adopted the Contributor Covenant to foster a welcoming community.
- Enhanced Issue Routing: Clearly partitioned detailed bug reports from general beta testing observations.
- Portability Audit: Added explicit POSIX/Linux caveats for the maintenance environment.
- Metadata Sync: Formally bumped project status to
Development Status :: 4 - Betaand synchronized version counters (1.0b1).
Released: 2026-06-07 | Git Tag: release_1_0b2 | Distribution: PyPI / GitHub
- Metadata Sync: Bumped project version to
1.0b2and synchronized version counters across all documentation and project headers. - Maintenance Guide Expansion: Formalize the "Technical Rationale" for the Defense in Depth strategy, detailing the local/remote distinction for Git hooks and security implications.
- Accumulating Changes: Track community feedback and bug fixes for the next beta release.
Target: 2026-08-30 | Git Tag: release_1_0b3 | Distribution: PyPI / GitHub
- PyVista Backend Migration: Replaced MayaVi with PyVista (
pyvista) for 3D sphere partition rendering and stereographic projections. - Off-Screen Rendering: Configured PyVista off-screen rendering for headless CI environments, doctests, and Sphinx builds.
- Zero Backwards Compatibility: Completely removed legacy MayaVi and PyQt5 dependencies across configuration and build scripts.
- Metadata Sync: Bumped project version to
1.0b3and synchronized version counters across all documentation and project headers.
- User Feedback Audit: Address final community feedback from the beta cycle.
- Master ToC Refinement (index.rst): Redesigned the master Table of Contents to resolve appendix numbering conflicts and correctly sequence volume references.
- Visual Audit: Final side-by-side verification of example figures vs. PhD Thesis PDF.
- Release Verification: Verified 1.0 release artifacts and distribution.
- Final 1.0 Tag: Canonical production release tag.
- Gradual Typing: Implement PEP 484 type hints for core package parameters (
dim,N,s). - Validation Hardening: Update
check_links.pyto verify inline code snippet paths. - Centralized Task Runner: Evaluate
noxor a unifiedMakefilefor task orchestration. - Doctest Hardening: Fully automate the verification of all documentation code snippets.
- Cut-down Performance Regression (Tier 2): Formalize automated performance gating against a baseline JSON.
- Dot Product Energy Optimization: Evaluate faster
$2(1 - X^T X)$ dot-product approach for points on the unit sphere. - Vectorized Area Calculations: Update
eq_area_errorto calculate area once per collar and broadcast. - Acceleration Research: Evaluate
NumbaorCythonfor core recursive partitioning loops.
- Maintenance Consolidation: Full Pylint-audit and refactor of all legacy benchmark and profiling scripts.
- Vale Full Automation: Integrate
valeproject-wide to enforce Australian English. - Lychee Integration: Transition to the
Lycheelink checker for deep markdown analysis.
- Dimensionality Expansion: Establish reference baselines and mathematical invariant tests for
$d \ge 4$ .