* fix: load VECTOR extension during DB init for semantic search
The VECTOR extension was only loaded inside the embedding generation
pipeline (createVectorIndex). On a fresh gitnexus serve session,
semantic and hybrid search failed because QUERY_VECTOR_INDEX was
unknown.
Now loads the VECTOR extension alongside FTS during database
initialization in both the single-connection and pool-based paths.
Fixes#766
* fix: reset vectorExtensionLoaded on DB close and retry paths
The vectorExtensionLoaded flag was not being reset in closeLbug() or
the busy-retry cleanup path in withLbugDb(). This caused the VECTOR
extension to not be re-loaded after a close+re-init cycle, breaking
semantic search on reconnection.
Also resets shared.ftsLoaded and shared.vectorLoaded in the pool
adapter closeOne() for external DB entries, preventing stale extension
state when the pool is re-opened.
Adds integration tests covering vector extension loading, idempotency,
and state reset on both close and busy-retry paths.
* fix: set ftsLoaded flag in initLbugWithDb to avoid redundant extension reloads
* fix: set shared.vectorLoaded flag in initLbugWithDb to avoid redundant reloads