Files
Hammad Bashir cbec464a01 [ENH] Add plan for multiple sparse vectors (#7304)
## Description of changes

_Summarize the changes made by this PR._

Adds the design/implementation plan for supporting multiple sparse vector indices per collection. This is the root of the PR stack and contains no product code.

- New functionality
  - Adds `plans/multiple_sparse_indices_*.plan.md` describing the end-to-end approach: lift the single-sparse-index cap, make segment storage and the compacted read/query path key-aware (one independent sparse index per metadata key), fuse scores across sparse indices, and update the Python/TS clients — all with backward-compatible reading and lazy migration of existing single-index collections.
  - Documents the incrementally reviewable PR stack: engine (#7305) → enable (#7306) → fusion (#7307) → clients (#7337).

## Test plan

_How are these changes tested?_

- [ ] Tests pass locally with `pytest` for python, `yarn test` for js, `cargo test` for rust
- Planning document only — no code and no tests in this PR. Tests land in the downstream implementation PRs.

## Migration plan

_Are there any migrations, or any forwards/backwards compatibility changes needed in order to make sure this change deploys reliably?_

None — planning document only. The plan itself describes the lazy, backward-compatible migration that the downstream PRs implement.

## Observability plan

_What is the plan to instrument and monitor this change?_

N/A — no runtime change.

## Documentation Changes

_Are all docstrings for user-facing APIs updated if required? Do we need to make documentation changes in the [docs section](https://github.com/chroma-core/chroma/tree/main/docs/docs.trychroma.com)?_

None — internal planning doc under `plans/`. User-facing documentation changes land in the implementation PRs.
2026-06-27 13:10:46 -07:00
..