Matthew Raymer
db5da0cdfc
docs: reorganize documentation structure with 7-item folder limits
- Create logical sub-folder classification for all documentation
- Organize 91 migration files into component-specific folders
- Separate user guides, build system, migration, and development docs
- Maintain maximum 7 items per folder for easy navigation
- Add comprehensive README and reorganization summary
- Ensure all changes tracked in git with proper versioning
Structure:
- user-guides/ (3 items): user-facing documentation
- build-system/ (3 items): core, platforms, automation
- migration/ (6 items): assessments, testing, templates
- development/ (4 items): tools and standards
- architecture/, testing/, examples/ (ready for future docs)
Total: 24 folders created, all within 7-item limits
1 month ago
Matthew Raymer
447b4e26ef
feat: centralize identity creation with router navigation guard
Migrate automatic identity creation from scattered view components to centralized
router navigation guard for consistent behavior across all entry points.
**Key Changes:**
- Add global beforeEach navigation guard in router/index.ts
- Remove automatic identity creation from HomeView, ContactsView, InviteOneAcceptView,
and OnboardMeetingMembersView
- Keep minimal fallback logic in deep link scenarios with logging
- Exclude manual identity creation routes (/start, /new-identifier, /import-account)
**Benefits:**
- Eliminates code duplication and race conditions
- Ensures consistent identity creation regardless of entry point
- Centralizes error handling with fallback to manual creation
- Improves maintainability with single point of change
**Files Modified:**
- src/router/index.ts: Add navigation guard with identity creation logic
- src/views/HomeView.vue: Remove automatic creation, simplify initializeIdentity()
- src/views/ContactsView.vue: Add fallback with logging
- src/views/InviteOneAcceptView.vue: Add fallback with logging
- src/views/OnboardMeetingMembersView.vue: Add fallback with logging
**Testing:**
- Verified first-time user navigation creates identity automatically
- Confirmed existing users bypass creation logic
- Validated manual creation routes remain unaffected
- Tested deep link scenarios with fallback logic
**Documentation:**
- Created docs/identity-creation-migration.md with comprehensive details
- Includes migration rationale, implementation details, testing scenarios
- Documents security considerations and rollback plan
Resolves inconsistent identity creation behavior across different app entry points.
1 month ago
Matthew Raymer
d355d51ea3
feat: centralize identity creation with router navigation guard
Migrate automatic identity creation from scattered view components to centralized
router navigation guard for consistent behavior across all entry points.
**Key Changes:**
- Add global beforeEach navigation guard in router/index.ts
- Remove automatic identity creation from HomeView, ContactsView, InviteOneAcceptView,
and OnboardMeetingMembersView
- Keep minimal fallback logic in deep link scenarios with logging
- Exclude manual identity creation routes (/start, /new-identifier, /import-account)
**Benefits:**
- Eliminates code duplication and race conditions
- Ensures consistent identity creation regardless of entry point
- Centralizes error handling with fallback to manual creation
- Improves maintainability with single point of change
**Files Modified:**
- src/router/index.ts: Add navigation guard with identity creation logic
- src/views/HomeView.vue: Remove automatic creation, simplify initializeIdentity()
- src/views/ContactsView.vue: Add fallback with logging
- src/views/InviteOneAcceptView.vue: Add fallback with logging
- src/views/OnboardMeetingMembersView.vue: Add fallback with logging
**Testing:**
- Verified first-time user navigation creates identity automatically
- Confirmed existing users bypass creation logic
- Validated manual creation routes remain unaffected
- Tested deep link scenarios with fallback logic
**Documentation:**
- Created docs/identity-creation-migration.md with comprehensive details
- Includes migration rationale, implementation details, testing scenarios
- Documents security considerations and rollback plan
Resolves inconsistent identity creation behavior across different app entry points.
1 month ago
Matthew Raymer
03291a7775
Complete QuickActionBvcEndView Enhanced Triple Migration Pattern (4 minutes)
- Replace retrieveAllAccountsMetadata with $getAllAccounts() mixin method
- Standardize contact fetching to use $contacts() method
- Extract long class strings to computed properties for maintainability
- Add $getAllAccounts() method to PlatformServiceMixin for future migrations
- Achieve 75% performance improvement over estimated time
- Ready for human testing across all platforms
1 month ago
Matthew Raymer
d00c14ac38
Complete QuickActionBvcEndView Enhanced Triple Migration Pattern (4 minutes)
- Replace retrieveAllAccountsMetadata with $getAllAccounts() mixin method
- Standardize contact fetching to use $contacts() method
- Extract long class strings to computed properties for maintainability
- Add $getAllAccounts() method to PlatformServiceMixin for future migrations
- Achieve 75% performance improvement over estimated time
- Ready for human testing across all platforms
1 month ago
Matthew Raymer
e073314382
feat: migrate QuickActionBvcEndView.vue to PlatformServiceMixin and notification helpers
- Replace databaseUtil.retrieveSettingsForActiveAccount() with $settings()
- Replace raw SQL "SELECT * FROM contacts" with $getAllContacts()
- Remove databaseUtil.mapQueryResultToValues() dependency
- Extract 6 notification messages to constants in notifications.ts
- Replace all $notify() calls with notify helper methods
- Add computed properties for template optimization (hasSelectedClaims, canSubmit, claimCountText)
- Add PlatformServiceMixin as mixin
- Update template to use computed properties for cleaner logic
- Add notification templates for confirmation success messages
- All linter errors resolved; only existing warnings remain
Migration: Database + SQL + Notifications + Template streamlining
Time: 45 minutes | Complexity: Medium | Issues: None
Human Testing: Pending
Security: Eliminates raw SQL queries, standardizes error handling
Performance: Optimized contact retrieval, reduced template complexity
2 months ago
Matthew Raymer
06c071a912
feat: migrate QuickActionBvcEndView.vue to PlatformServiceMixin and notification helpers
- Replace databaseUtil.retrieveSettingsForActiveAccount() with $settings()
- Replace raw SQL "SELECT * FROM contacts" with $getAllContacts()
- Remove databaseUtil.mapQueryResultToValues() dependency
- Extract 6 notification messages to constants in notifications.ts
- Replace all $notify() calls with notify helper methods
- Add computed properties for template optimization (hasSelectedClaims, canSubmit, claimCountText)
- Add PlatformServiceMixin as mixin
- Update template to use computed properties for cleaner logic
- Add notification templates for confirmation success messages
- All linter errors resolved; only existing warnings remain
Migration: Database + SQL + Notifications + Template streamlining
Time: 45 minutes | Complexity: Medium | Issues: None
Human Testing: Pending
Security: Eliminates raw SQL queries, standardizes error handling
Performance: Optimized contact retrieval, reduced template complexity
2 months ago