Skip to content

fix(runtime): validate vector store selection#47

Merged
JSONbored merged 4 commits intomainfrom
codex/storage-config-validation
Apr 25, 2026
Merged

fix(runtime): validate vector store selection#47
JSONbored merged 4 commits intomainfrom
codex/storage-config-validation

Conversation

@JSONbored
Copy link
Copy Markdown
Owner

Summary

  • reject ambiguous external vector-store env combinations before OpenMemory starts
  • document the real one-backend selection model in the Unraid template and docs
  • add focused coverage for bundled Qdrant, external Qdrant, partial PGVector, and competing backend selectors

What changed

  • validates QDRANT_, REDIS_URL, PG_, Chroma, Weaviate, Milvus, Elasticsearch, OpenSearch, and FAISS selectors in the wrapper
  • sets s6 to fail fast when cont-init validation fails
  • tightens Advanced View help text in the source XML
  • extends the shared container contract to require s6 fail-fast behavior

Why

  • OpenMemory can only initialize one vector store, and the previous env priority could silently hide impossible combinations such as Redis plus PGVector plus external Qdrant

Validation

  • .venv-local/bin/pytest tests/unit tests/template
  • .venv-local/bin/python scripts/validate-template.py
  • .venv-local/bin/pytest tests/integration/test_container_runtime.py
  • manual invalid-container probe with REDIS_URL + PG_* + QDRANT_URL returned exit status 1
  • trunk check on touched files
  • git diff --check

Notes

  • awesome-unraid is intentionally untouched; catalog templates are synced from source AIO repos.

@JSONbored JSONbored self-assigned this Apr 25, 2026
@JSONbored JSONbored merged commit 3e48c3e into main Apr 25, 2026
12 checks passed
@JSONbored JSONbored deleted the codex/storage-config-validation branch April 25, 2026 06:39
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