RI-8158: vector set similarity form and table#5872
Conversation
🛡️ Jit Security Scan Results✅ No security findings were detected in this PR
Security scan by Jit
|
b53a70e to
367f689
Compare
Code Coverage - Backend unit tests
Test suite run success3413 tests passing in 306 suites. Report generated by 🧪jest coverage report action from 4380b98 |
Code Coverage - Integration Tests
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
There are 2 total unresolved issues (including 1 from previous review).
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit f546a1b. Configure here.
Code Coverage - Frontend unit tests
Test suite run success6867 tests passing in 793 suites. Report generated by 🧪jest coverage report action from 4380b98 |
62b579f to
f78d4a7
Compare
f546a1b to
95b3f98
Compare
f34ed38 to
9681692
Compare
13af0a5 to
f733fc4
Compare
1ea2152 to
ae4b0ec
Compare
| </ButtonGroup> | ||
| </FlexItem> | ||
| <FlexItem grow> | ||
| {state.mode === 'vector' ? ( |
There was a problem hiding this comment.
nit: I'm thinking of changing this to an enum, in case we use it in many places.
|
|
||
| import { SimilaritySearchResultsTable } from './SimilaritySearchResultsTable' | ||
|
|
||
| faker.seed(8158) |
There was a problem hiding this comment.
Do we need to fix the seeds for some reason?
ae4b0ec to
7e3e852
Compare
f733fc4 to
4380b98
Compare

What
Builds the similarity-search UI on top of the FE foundation landed in #vector-similarity-1 (slice + thunks +
useSimilaritySearchhook).similarity-search-form/) — three self-contained components:SimilaritySearchFormwith vector / element mode toggle, vector or element input (with FP32 + numeric validation against the key'svectorDim), result count, filter expression, BE-built command preview, and a submit + reset action row.CommandPreview— renders the BE-builtVSIMpreview the search would actually run, with copy-to-clipboard and a neutral placeholder while idle.FilterSyntaxHelpPopover— inline help next to the filter field, listing supported operators and example expressions.VSIMpayload.IconButtonto the left of "Find similar items") — clears the form's local state and dispatches the hook'sresetSimilaritySearchto wipe slice state. The form also remounts on key change (key={keyName}), and the slice is cleared on key change / unmount, so the form is reset whenever the user navigates to another key, closes the key details, or otherwise leaves the view.similarity-search-results/) — sorted by score with a "high match" highlight (HIGH_SIMILARITY_THRESHOLD = 0.85), reusing the existingElementrendering pipeline for compressor + view-format support. Replaces the regular vector-set element list inVectorSetDetailswhenever a search has results.bytesToBase64andvalidateVectorfromvector-set-element-form/utilsso the hook layer (from #vector-similarity-1) can build the BE payload from the form state without duplicating validation logic.QuantityCounterfrom@redis-ui/componentsviauiSrc/components/base/inputs.Testing
Add vector set with elements + similarity search
Uploading Screen Recording 2026-05-08 at 14.22.07.mov…
Note
Medium Risk
Introduces new vector similarity-search UI and conditional rendering in
VectorSetDetails, which changes user flows and relies on Redux slice/hook state; risk is mainly UI/state wiring regressions rather than security or data integrity.Overview
Adds a vector set similarity search UI to key details: a new
SimilaritySearchForm(vector/element mode, count + filter, reset, and a backend-driven command preview with copy) is rendered above the vector-set subheader.Updates
VectorSetDetailsto swap the regular element list for a newSimilaritySearchResultsTablewhen similarity-search results exist, sorting by score and highlighting high-similarity matches.Expands test coverage with new specs for the form, results formatting/sorting, and the details view’s conditional rendering, and re-exports
QuantityCountervia the base inputs index for use in the form.Reviewed by Cursor Bugbot for commit 4380b98. Bugbot is set up for automated code reviews on this repo. Configure here.