Skip to content

dl4rce/flaiwheel

v1.8.0 Feature

This release adds 3 notable features for engineering teams evaluating rollout.

Published 3mo MCP Search & Web
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Summary

AI summary

Zero-downtime embedding model switching enables background re-indexing with live UI progress and cancellation.

Full changelog

What's New

Zero-downtime embedding model switching. When you change the embedding model via the Web UI, Flaiwheel now re-embeds all documents in the background while the old model keeps serving searches. Once complete, the new index atomically replaces the old one.

How it works

  1. User selects a new embedding model in the Web UI and clicks "Save & Re-Index"
  2. Flaiwheel immediately returns 202 and starts a background migration worker
  3. The worker creates a shadow ChromaDB collection and re-embeds every file with the new model
  4. Search continues working on the old model throughout the entire process
  5. When all files are done, the shadow collection atomically replaces the old one
  6. Hash cache is cleared so subsequent reindexes start fresh

Web UI

  • Live progress bar shows model name, file count, percentage, and chunk count
  • Cancel button stops the migration and cleans up the shadow collection
  • Progress bar automatically appears if you refresh the page during a migration
  • Migration status is also visible in the health panel

API Endpoints

  • POST /api/config — now returns 202 with migration object when model changes (non-blocking)
  • GET /api/migration/status — poll for progress (returns null when idle)
  • POST /api/migration/cancel — cancel an in-progress migration

Edge Cases Handled

  • Concurrent migrations: second attempt returns 409 with "already in progress"
  • Same model selected: returns immediately with "skipped"
  • Container restart during migration: orphaned shadow collection is cleaned up on startup
  • Git watcher reindex during migration: operates on the old collection independently

Tests (10 new, 98 total)

  • Migration completes and replaces old collection
  • Health tracker records migration status
  • Search works during active migration
  • Cancel stops migration and cleans up shadow collection
  • Cancel when no migration returns error
  • Concurrent migration attempt is rejected
  • Same model selection returns "skipped"
  • Orphaned shadow collection cleaned up on init
  • No migration returns None status
  • Running migration returns progress dict

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track dl4rce/flaiwheel

Get notified when new releases ship.

Sign up free

About dl4rce/flaiwheel

Self-hosted memory and governance layer for AI coding agents. 28 MCP tools with structured knowledge capture, hybrid search (semantic + BM25 + cross-encoder reranking), behavioral documentation nudges, cold-start codebase analyzer, and git-native storage. Single Docker container, zero cloud dependencies.

All releases →

Beta — feedback welcome: [email protected]