Skip to content

feat: Add health monitoring and fallback system#232

Open
esafwan wants to merge 2 commits into
developfrom
kimi/vector-store-health-fallback
Open

feat: Add health monitoring and fallback system#232
esafwan wants to merge 2 commits into
developfrom
kimi/vector-store-health-fallback

Conversation

@esafwan
Copy link
Copy Markdown
Contributor

@esafwan esafwan commented Mar 30, 2026

Summary

Implements health monitoring and automatic fallback system for vector backends.

Features

  • BackendHealthMonitor - Health check caching (5-min TTL), status tracking
  • FallbackRetriever - Automatic failover to SQLite on backend failure
  • Scheduled job - Background health checks every 5 minutes

Safety

  • Graceful degradation to SQLite
  • Health status visible in DocType
  • Configurable fallback per knowledge source

Files

  • huf/ai/knowledge/health_monitor.py
  • huf/ai/knowledge/fallback_retriever.py
  • huf/huf/scheduled_job_type/health_check_backends/

Related

Ensures reliability when using external vector databases.

esafwan added 2 commits March 28, 2026 11:04
- PRD: Programmable Memory & Learning Layer
- DocType designs: Memory Record, Policy, Profile
- Tech specs: Capture/Retrieval, Storage Architecture
- Profiles: Travel Planning, Programming, Documentation
- Implementation plan and project tracking
…r-database support

- Add BackendHealthMonitor with 5-minute TTL caching
- Add FallbackRetriever with automatic backend failover
- Add scheduled job definition for periodic health checks (every 5 minutes)
- Add health_check, supports_filters, supports_hybrid_search methods to sqlite_fts backend
- Update knowledge search tool to use FallbackRetriever

Files added/modified:
- huf/ai/knowledge/health_monitor.py
- huf/ai/knowledge/fallback_retriever.py
- huf/huf/scheduled_job_type/health_check_backends/health_check_backends.json
- huf/ai/knowledge/tool.py
- huf/ai/knowledge/backends/sqlite_fts.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant