Merged
Conversation
- Add pytest configuration and test suite for backend (68 tests) - API startup and configuration tests - Resume operations tests - AI provider tests - Application tracking tests - Profile management tests - Add vitest configuration and test suite for frontend (65 tests) - Diagnostic tests for module imports and environment - Resume store state management tests - API client structure tests - App component rendering tests - Add test dependencies to requirements.txt and package.json - Fix .gitignore lib/ pattern to not ignore frontend/src/lib - Add scripts/ and docs/ folders to .gitignore (dev only)
- Remove test files from tracked locations (backend/tests/, frontend/src/test/) - Tests now consolidated under scripts/tests/ which is gitignored - Fixes frontend CI build failure caused by TypeScript errors in test files - Test files are development-only and should not be in the public repo
- Add tests/ folder with 133 automated tests (68 backend + 65 frontend) - Backend: pytest tests for API, resume ops, AI providers, applications, profiles - Frontend: vitest tests for components, stores, API client - Test code visible in repo for interview portfolio - Test reports still gitignored (output artifacts)
Issue #1: CI was not running automated tests - Add vitest execution to frontend-ci.yml (65 frontend tests) - Add pytest execution to code-quality.yml (68 backend tests) - CI now validates all 133 tests pass before merge
- Move vitest.config.ts to frontend/ (can access node_modules) - Add test-setup.ts to frontend/ - Add explicit aliases for test dependencies - All 65 frontend tests now pass
- Add up/down move functionality to all form components (Education, Experience, Skills, Projects, Certifications, Others) - Add move methods to resumeStore for all section types - Add profile_cleanup fixture to prevent test artifacts from polluting production database - Add 17 new frontend tests for reorder functionality - Update frontend-ci.yml test count to 82
- Fix bug where form changes were lost when switching tabs - Add auto-sync to update store on every form field change - Add 12 new component tests for PersonalInfoForm (94 total frontend)
- Fix template conditional logic for phone/email separators - Separators now correctly check for location and citizenship fields - Add 11 unit tests for template contact line separator logic
- Add SaveProfileDialog component for entering custom profile names - Add activeProfileName state to Zustand store - Update PersonalInfoForm to show dialog on save with pre-filled name - Update useProfileSave hook to use activeProfileName for other tabs - Set activeProfileName when loading saved profiles
- Add 11 tests for SaveProfileDialog component - Add 7 tests for activeProfileName store functionality - Update frontend test count from 94 to 112
- Add console.error filter for known Radix UI act() warnings - Update PersonalInfoForm tests to use act() for unmount operations
- Smart detection: if values are >= 1000, assume already full amounts - Prevents "$150,000k" from being parsed as 150 million - Handles both "150k-190k" (small numbers with k) and "150000-190000" correctly
Tests now use a dedicated test database in the temp directory instead of the production database. This prevents test data (Google, Meta, etc.) from polluting the user's real application tracking data. - Add session-scoped fixture to create/cleanup test database - Override FastAPI dependencies to inject test database - Test DB location: %TEMP%/resume_helper_tests/test_applications.db
Backend fixes: - Fix import paths in application_workflows.py - Improve validation to handle objects/None values gracefully - Add better error messages for duplicate job URLs - Add logging to application creation endpoint Frontend fixes: - Add extractString helper to safely extract values from AI responses - Re-throw errors in applicationStore so they're displayed in toasts Tests: - Add 7 new validation edge case tests (Test07_ValidationEdgeCases) - Add duplicate URL detection tests (Test08_DuplicateDetection) - Update test count from 68 to 86 in CI workflow
- Version 3.0 -> 3.1 in UI, package.json, pyproject.toml - Fix salary parsing (LLM-agnostic, supports 'base' property) - Fix /api/applications/settings 404 (route ordering) - Fix UV hardlink error (--link-mode copy for cloud folders) - Add Playwright auto-install to start script - Add CHANGELOG.md with full version history - Rewrite README.md for SEO and star appeal - Add CHANGELOG.html and README.html to .gitignore
When Node.js is auto-installed via winget on first run, the new PATH is not available in the current terminal session. The script now shows a clear message explaining this and instructs the user to restart the script, then exits gracefully instead of crashing.
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.
Summary
Fixing issues reported by beta users during testing.
Issues to fix:
Changes
CI Test Execution - Added pytest and vitest to GitHub Actions workflows
Test Infrastructure - 198 automated tests visible in
tests/folderReorder Functionality - Added up/down buttons to Education, Experience, Skills, Projects, Certifications, and Others sections
Test Cleanup - Added fixtures to automatically clean up test profiles, preventing ghost profiles from appearing in production
PersonalInfo Auto-sync - Fixed bug where form changes were lost when switching tabs; all fields now auto-sync to store on change
PDF Contact Line Separators
Customer Profile features - Added activeProfileName state and setActiveProfileName action, Dialog component with:
( Profile name input (pre-filled with full name), warning when profile name already exists, Cancel/Save buttons)
Fix application tracker submission and add validation tests
Backend fixes:
application_workflows.pyFrontend fixes:
extractStringhelper to safely extract values from AI responses