Feature: Context service coverage boost As a maintainer I want remaining uncovered defensive branches in context_service.py exercised So that coverage reaches the maximum achievable level # Line 566: `or {}` fallback when Settings.build_langsmith_config returns None @coverage Scenario: _build_langsmith_config falls back to empty dict when settings helper returns None Given a boost workspace with LangSmith enabled but build returning None When I build a LangSmith config via the boost service Then the boost LangSmith config should be an empty dict # Lines 603-607: except Exception branch in _refresh_vector_index @coverage Scenario: _refresh_vector_index catches generic non-ConfigurationError exceptions Given a boost workspace with a vector store that raises RuntimeError on refresh When I trigger a boost vector index refresh Then the boost refresh should complete without raising # Line 923: service is None defensive guard in search_context @coverage Scenario: search_context returns empty when vector store available reports true but service is None Given a boost workspace where vector_store_available is true but service is None When I search the boost context for "test query" Then the boost search results should be empty # Lines 938-939: except Exception branch in search_context @coverage Scenario: search_context catches generic non-ConfigurationError from vector store search Given a boost workspace with a vector store that raises RuntimeError on search When I search the boost context for "find me" Then the boost search results should be empty