Replace base2048 with mikeshardmind-base2048 and add spec tests #1518
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Replace the current Rust-based base2048 dependency with a Python alternative (mikeshardmind-base2048) to drop the Cargo/Rust requirement while also keeping functionality identical. Comprehensive Base2048 tests with reference vectors generated from the original Rust package to prove encoding/decoding compatibility and probe integration have also been added.
The following have been changed:
Dependencies: base2048 → mikeshardmind-base2048>=1.0.2 in pyproject.toml and requirements.txt.
Tests: tests/probes/test_base2048.py covers encoding/decoding parity with the original Base2048 outputs (reference vectors), roundtrip for all bytes/lengths, realistic payloads (ASCII/Unicode), API contract, pure-Python check, and InjectBase2048 probe integration. Includes a Docker command to regenerate the reference vectors used in comparison.