Skip to content

fix(session): degrade gracefully when SQLite lacks FTS5#10972

Open
LeonSGP43 wants to merge 1 commit into
NousResearch:mainfrom
LeonSGP43:fix/sessiondb-no-fts5
Open

fix(session): degrade gracefully when SQLite lacks FTS5#10972
LeonSGP43 wants to merge 1 commit into
NousResearch:mainfrom
LeonSGP43:fix/sessiondb-no-fts5

Conversation

@LeonSGP43

Copy link
Copy Markdown
Contributor

Summary

  • keep SessionDB usable when the bundled SQLite build does not provide FTS5
  • disable only full-text search in that case instead of dropping the entire SQLite session store
  • add regression coverage for a simulated no-FTS5 SQLite runtime

Why

  • some Python/SQLite builds do not ship the fts5 module, which currently makes gateway session storage fall back to JSONL entirely
  • the store can still handle normal session/message persistence without FTS5, so failing the whole initialization is unnecessary

Fixes #10897

Testing

  • pytest -o addopts='' tests/test_hermes_state.py -k 'db_initializes_without_fts5_module or search_messages'
  • pytest -o addopts='' tests/test_hermes_state.py

@alt-glitch alt-glitch added type/bug Something isn't working P2 Medium — degraded but workaround exists comp/agent Core agent loop, run_agent.py, prompt builder labels Apr 25, 2026
@alt-glitch

Copy link
Copy Markdown
Collaborator

Likely duplicate of #13222 (closed) which fixed #13029 — same graceful FTS5 degradation approach. Please verify whether #13222's fix was merged and already covers this, or if this PR addresses a gap that remained.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/agent Core agent loop, run_agent.py, prompt builder P2 Medium — degraded but workaround exists type/bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: no such module: fts5

2 participants