Skip to content

Vox 58 v0.1.0 sprint#55

Merged
BeckettFrey merged 21 commits into
mainfrom
VOX-58-v0.1.0-Sprint
Feb 11, 2026
Merged

Vox 58 v0.1.0 sprint#55
BeckettFrey merged 21 commits into
mainfrom
VOX-58-v0.1.0-Sprint

Conversation

@BeckettFrey

Copy link
Copy Markdown
Member

Release to Main

Version: v0.1.0

Release Summary

Initial public release of VoxKit - a PyQt6 desktop application bridging AI/ML research and clinical speech-language pathology applications. This sprint focused on documentation consolidation, comprehensive test coverage, build system reorganization, and streamlining engine support to MFA-only.

Included Changes

  • Documentation Overhaul (VOX-67 through VOX-74): Comprehensive documentation for all modules including engines, analyzers, pipeline stackers, storage, and GUI. Condensed root documentation and reorganized files into docs/ directory
  • Test Coverage Expansion: Added extensive test suites for storage, analyzers, config, and engines modules (~3000+ lines of new tests)
  • Build System Reorganization: Moved build scripts and frozen patch to scripts/ directory; fixed PyInstaller path resolution and dependency bundling issues
  • Engine Simplification (VOX-66): Retained only MFA engine, removed other engine implementations and HuggingFace service
  • Project Structure Cleanup: Moved coverage badge to assets/, added header image, removed unreferenced root markdown files
  • Configuration Updates (VOX-76): Updated release date and contact information in app_info.yaml

Breaking Changes

  • Removed HuggingFace service (voxkit/services/hf.py)
  • Removed non-MFA engine implementations
  • Build script relocated from build.py to scripts/build.py (update any external build references)
  • PR templates removed from .github/PULL_REQUEST_TEMPLATE/

Pre-merge Checklist

  • All release branch tests pass
  • Version number updated appropriately
  • Changelog updated
  • Release notes prepared
  • Documentation is up to date

Post-merge Actions

  • Push tag v0.1.0 to trigger release workflow (git tag v0.1.0 && git push origin v0.1.0)
  • Verify Release assets (VoxKit-macOS.app.zip, VoxKit-macOS.dmg) are generated
  • Confirm prerelease is created with correct version info

BeckettFrey and others added 21 commits February 10, 2026 10:59
* Centralize file write operations in storage module

Move all file system write operations to the storage module to improve
code organization and maintainability:

- Move download_and_copy_huggingface_model() from services/hf.py to
  storage/models.py and delete services/hf.py
- Add save_json() utility to storage/utils.py for JSON persistence
- Extend create_model() to accept optional source_path parameter for
  copying model files during creation
- Extend create_dataset() to accept optional analysis_data and
  analysis_method parameters for saving analysis CSV during creation
- Simplify models_thread.py and datasets_thread.py workers by delegating
  file operations to storage module

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Improve storage module test coverage to 93%

Add comprehensive tests for previously untested functionality:
- test_utils.py: Tests for is_first_launch, mark_first_launch_complete,
  save_json, generate_unique_id, and readable_from_unique_id
- test_datasets.py: Tests for update_dataset_metadata, create_dataset
  with analysis_data, and validate_dataset negative cases
- test_models.py: Tests for update_model_metadata, create_model with
  source_path, and import_models

Fix bug in import_models() where source_model_path variable was being
overwritten, causing shutil.copytree to copy from wrong location.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Move storage tests to tests/storage/ for consistency

Relocate storage module tests from src/voxkit/storage/test/ to
tests/storage/ to match the project structure (tests/gui/ already
exists at root level).

Changes:
- Move all test files to tests/storage/
- Convert relative imports to absolute imports (voxkit.storage.*)
- Simplify Makefile test command to just use tests/

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Add base engine tests and exclude engine implementations from coverage

- Add 25 tests for AlignmentEngine base class (99% coverage)
- Configure coverage to exclude *_engine.py files (implementations)
- Exclude NotImplementedError lines from coverage reports
- Update Makefile coverage command to use tests/ directory

Coverage improved from 32% to 36% by excluding untestable engine
implementations that require external tools (MFA, Whisper, etc.)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Reconfigure coverage to measure testable business logic only (#52)

* Initial plan

* Implement focused coverage strategy with comprehensive documentation

Co-authored-by: BeckettFrey <83560790+BeckettFrey@users.noreply.github.com>

* Fix TOML syntax and add implementation notes

Co-authored-by: BeckettFrey <83560790+BeckettFrey@users.noreply.github.com>

* Add comprehensive coverage improvement recommendations

Co-authored-by: BeckettFrey <83560790+BeckettFrey@users.noreply.github.com>

* Fix code review issues: correct string escaping and simplify coverage-all command

Co-authored-by: BeckettFrey <83560790+BeckettFrey@users.noreply.github.com>

* Address all code review feedback: clarify commands, fix documentation, simplify regex

Co-authored-by: BeckettFrey <83560790+BeckettFrey@users.noreply.github.com>

* docs: enhance coverage report for use case

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: BeckettFrey <83560790+BeckettFrey@users.noreply.github.com>
Co-authored-by: Beckett Frey <beckett.frey@gmail.com>

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Updated help_url to point to the production site.
Updated project description to highlight active development status and encourage user feedback.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Simplify ARCHITECTURE.md to high-level onboarding guide
- Simplify README.md project structure
- Add centered logo header and coverage badge
- Reorganize badges layout

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Delete TESTING.md, COVERAGE_STRATEGY.md, COVERAGE_RECOMMENDATIONS.md,
and IMPLEMENTATION_NOTES.md which were not referenced in README.
Update CONTRIBUTING.md to remove broken links.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@BeckettFrey BeckettFrey merged commit 7b8822d into main Feb 11, 2026
1 of 4 checks passed
@BeckettFrey BeckettFrey deleted the VOX-58-v0.1.0-Sprint branch February 11, 2026 01:07
BeckettFrey added a commit that referenced this pull request Feb 11, 2026
* VOX-66 (#53)

* Centralize file write operations in storage module

Move all file system write operations to the storage module to improve
code organization and maintainability:

- Move download_and_copy_huggingface_model() from services/hf.py to
  storage/models.py and delete services/hf.py
- Add save_json() utility to storage/utils.py for JSON persistence
- Extend create_model() to accept optional source_path parameter for
  copying model files during creation
- Extend create_dataset() to accept optional analysis_data and
  analysis_method parameters for saving analysis CSV during creation
- Simplify models_thread.py and datasets_thread.py workers by delegating
  file operations to storage module

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Improve storage module test coverage to 93%

Add comprehensive tests for previously untested functionality:
- test_utils.py: Tests for is_first_launch, mark_first_launch_complete,
  save_json, generate_unique_id, and readable_from_unique_id
- test_datasets.py: Tests for update_dataset_metadata, create_dataset
  with analysis_data, and validate_dataset negative cases
- test_models.py: Tests for update_model_metadata, create_model with
  source_path, and import_models

Fix bug in import_models() where source_model_path variable was being
overwritten, causing shutil.copytree to copy from wrong location.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Move storage tests to tests/storage/ for consistency

Relocate storage module tests from src/voxkit/storage/test/ to
tests/storage/ to match the project structure (tests/gui/ already
exists at root level).

Changes:
- Move all test files to tests/storage/
- Convert relative imports to absolute imports (voxkit.storage.*)
- Simplify Makefile test command to just use tests/

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Add base engine tests and exclude engine implementations from coverage

- Add 25 tests for AlignmentEngine base class (99% coverage)
- Configure coverage to exclude *_engine.py files (implementations)
- Exclude NotImplementedError lines from coverage reports
- Update Makefile coverage command to use tests/ directory

Coverage improved from 32% to 36% by excluding untestable engine
implementations that require external tools (MFA, Whisper, etc.)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Reconfigure coverage to measure testable business logic only (#52)

* Initial plan

* Implement focused coverage strategy with comprehensive documentation

Co-authored-by: BeckettFrey <83560790+BeckettFrey@users.noreply.github.com>

* Fix TOML syntax and add implementation notes

Co-authored-by: BeckettFrey <83560790+BeckettFrey@users.noreply.github.com>

* Add comprehensive coverage improvement recommendations

Co-authored-by: BeckettFrey <83560790+BeckettFrey@users.noreply.github.com>

* Fix code review issues: correct string escaping and simplify coverage-all command

Co-authored-by: BeckettFrey <83560790+BeckettFrey@users.noreply.github.com>

* Address all code review feedback: clarify commands, fix documentation, simplify regex

Co-authored-by: BeckettFrey <83560790+BeckettFrey@users.noreply.github.com>

* docs: enhance coverage report for use case

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: BeckettFrey <83560790+BeckettFrey@users.noreply.github.com>
Co-authored-by: Beckett Frey <beckett.frey@gmail.com>

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>

* Fix startup script and retain only MFA engine (#54)

* VOX-76 Fix help_url in app_info.yaml

Updated help_url to point to the production site.

* VOX-76 Update release date and contact information in YAML

* VOX-67 Revise README to emphasize development phase

Updated project description to highlight active development status and encourage user feedback.

* Update README for important notice formatting

* VOX-68 Add comprehensive documentation to pipeline stackers module

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* VOX-69 Add comprehensive documentation to engines module

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* VOX-70 Add comprehensive documentation to analyzers module

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* VOX-71 Simplify GUI module documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* VOX-72 Condense storage module documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* VOX-74 Condense package root documentation and exports

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* VOX-73 Update documentation files for clarity and consistency

- Simplify ARCHITECTURE.md to high-level onboarding guide
- Simplify README.md project structure
- Add centered logo header and coverage badge
- Reorganize badges layout

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Add readme image header

* Remove unreferenced root markdown files

Delete TESTING.md, COVERAGE_STRATEGY.md, COVERAGE_RECOMMENDATIONS.md,
and IMPLEMENTATION_NOTES.md which were not referenced in README.
Update CONTRIBUTING.md to remove broken links.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Move documentation files to docs/

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Move build files to scripts/

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Move coverage.svg to assets/

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* resolve PyInstaller paths and missing data files after build script relocation

* fix dependency bundle issues brough on by nesting scripts

* potential actions resolution

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
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