Detailed plan with bite-sized tasks for:
- Notification message format improvements
- Settings section collapse fix
- Modal filter control repairs
Co-Authored-By: Claude <noreply@anthropic.com>
Documents fixes for three UX issues:
- Unclear notification message format
- Settings section collapsing on toggle
- Broken filter controls in history modal
Co-Authored-By: Claude <noreply@anthropic.com>
Comprehensive design for streamlining the settings UI using progressive
disclosure to reduce visual clutter while preserving all functionality.
Key changes:
- Move Server Status to top for better visibility
- Collapse Authentication and UI Notifications sections by default
- Remove encryption-related messaging
- Remove network security disclosure
- Simplify all descriptive text
- Use native HTML details/summary elements for collapsibility
- Removed 3 deprecated implementation plan documents from docs/plans directory:
- 2025-01-20-tools-coverage-implementation.md
- 2025-01-20-utils-coverage-completion.md
- 2025-01-20-utils-coverage-implementation.md
- These plans are no longer needed since the coverage work has been completed and merged
Updated VaultTools to use adapters for all utility method calls:
- SearchUtils.searchWaypoints() now receives vault adapter
- WaypointUtils.isFolderNote() now receives vault adapter
- LinkUtils.validateWikilinks() now receives vault and metadata adapters
- LinkUtils.resolveLink() now receives vault and metadata adapters
- LinkUtils.getBacklinks() now receives vault and metadata adapters
Removed App dependency from VaultTools constructor - now only requires
vault and metadata adapters. Updated factory and all test files accordingly.
All tests passing (336/336).
Update validateWikilinks, resolveWikilink, and getBacklinks methods
to use IVaultAdapter and IMetadataCacheAdapter instead of direct App access.
- Implemented inline link suggestion finding using vault adapter
- Implemented backlinks retrieval using metadata cache adapter
- Added helper methods: findLinkSuggestions, extractSnippet, escapeRegex
- App parameter still required for waypoint methods (not in scope for this task)
Add comprehensive design for achieving 100% test coverage through
dependency injection refactoring. The design introduces adapter
interfaces to decouple tool classes from Obsidian API dependencies,
enabling cleaner, more maintainable tests.
Key elements:
- IVaultAdapter, IMetadataCacheAdapter, IFileManagerAdapter interfaces
- Factory pattern for production usage
- Phased implementation approach (adapters → VaultTools → NoteTools → integration)
- Mock adapter pattern for simplified test setup
- Coverage strategy organized by feature areas
Goal: Codebase confidence for future refactoring and feature work.