Skip to content

Organize prime and dice code into dedicated suite - #8

Open
dlworrell wants to merge 3 commits into
mainfrom
refactor/organize-prime-generators
Open

Organize prime and dice code into dedicated suite#8
dlworrell wants to merge 3 commits into
mainfrom
refactor/organize-prime-generators

Conversation

@dlworrell

@dlworrell dlworrell commented Aug 8, 2026

Copy link
Copy Markdown
Owner

Summary

  • collect the prime generators and prime-seeded dice implementations under prime-number-suite/
  • retain the existing .github/, docs/, election-data/, election_reporting/, reports/, and tests/ directory structure
  • leave README.md as the only loose tracked file at the repository root
  • update repository and engineering documentation for the new paths and the election-reporting codebase that shares the repository
  • document maintained versus legacy implementations and add review-oriented comments throughout the moved code
  • add strict-warning builds, integration tests, sanitizer coverage, and a dedicated GitHub Actions workflow

Notable correctness and review changes

  • harden and document the C11 segmented wheel sieve
  • convert the CUDA implementation to a conventional .cu target and correct inclusive upper-bound handling
  • prevent wrapped prime lists from replaying identical dice RNG states by mixing each logical roll index into its seed
  • repair maintained PhysX task sharding and local RNG plumbing
  • clearly quarantine incomplete historical PhysX prototypes under dice/legacy/
  • keep strict AEMS governance active after relocating .clang-tidy, with current review dispositions for the sieve's centralized allocation boundaries

Verification

  • strict C11/C++17 builds with -Wall -Wextra -Wpedantic -Wconversion -Wshadow -Werror
  • 8/8 prime/dice integration tests pass
  • ASan/UBSan build and tests pass locally
  • 250 randomized prime ranges match an independent reference implementation
  • π(1,000,000) = 78,498 and final prime 999,983 verified
  • 11/11 existing election-reporting tests pass with the repository's pinned EDT revision
  • Python syntax, workflow YAML, Markdown links, whitespace, and banned-API scans pass
  • GitHub Actions pass: Prime Number Suite, Election Result Reports, and AES-SEC-001 Governance

Review notes

CUDA compilation requires an NVIDIA CUDA toolchain and representative hardware. The maintained PhysX target requires a complete PhysX SDK. Both remain optional CMake targets and are documented for environment-specific review.

@dlworrell
dlworrell marked this pull request as ready for review August 8, 2026 01:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant