Vox 58 v0.1.0 sprint#55
Merged
Merged
Conversation
* 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
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>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
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
docs/directoryscripts/directory; fixed PyInstaller path resolution and dependency bundling issuesassets/, added header image, removed unreferenced root markdown filesBreaking Changes
voxkit/services/hf.py)build.pytoscripts/build.py(update any external build references).github/PULL_REQUEST_TEMPLATE/Pre-merge Checklist
Post-merge Actions
v0.1.0to trigger release workflow (git tag v0.1.0 && git push origin v0.1.0)