mirror of
https://github.com/esengine/DeepSeek-Reasonix.git
synced 2026-11-11 10:01:27 -10:00
Problem: Catalog reindex commands only reconciled the existing database, metadata-only history edits could miss reconciliation, and concurrent rebuilds could race during replacement. Root cause: History, usage, and task entry points had no validated replacement pipeline; the history root signature ignored sidecar metadata; and projection rebuilds had no cross-process lifecycle lock. Fix: Build each derived catalog in a validated sibling database before atomic replacement, fence process-global managers during rebuild, retain task notifications across the fence, include metadata in history signatures, and serialize rebuilds with an advisory lock. Verification: - go test -count=1 ./... - cd desktop && go test -count=1 ./... - go test -race for boot and all affected catalog packages - cd desktop && go test -race -count=1 ./... - go vet for root and desktop modules - make lint plus CI build-tag lint matrix - CGO_ENABLED=0 builds for darwin, linux, and windows targets