mirror of
https://github.com/DeusData/codebase-memory-mcp.git
synced 2026-10-27 06:53:11 +08:00
The backend /api/index-status reports status:"error" plus an error message for failed indexing jobs, but IndexProgress treated any non-"indexing" state as successful completion: the spinner vanished with no feedback (e.g. after an OOM-killed indexer subprocess), the project never appeared, and no error was shown. Render a visible error banner (path + error text) with a Dismiss button instead, and keep the success flow unchanged. Beyond the original PR: - Restore the empty-jobs guard the PR dropped: the backend keeps finished jobs listed as "done"/"error" (handle_index_status only skips idle slots), so an empty list mid-index only occurs on transient state loss and must not be treated as completion. - Route the new user-facing strings through the i18n system (projects.indexingFailed, common.dismiss; EN + zh entries). - Cover error banner + dismiss, success flow and the empty-jobs guard with vitest cases on the now-exported IndexProgress. Distilled from #549. Refs #524 Co-authored-by: sahil-mangla <manglasahil2017@gmail.com> Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>