@@ -99,10 +99,8 @@ const subjectToken = (subject: string) => `s:github-repositories:-:${subject}`
9999const aclOf = ( ...who : Array < 'alice' | 'bob' > ) =>
100100 who . map ( ( name ) => subjectToken ( members [ name ] . subject ) ) . sort ( )
101101/**
102- * A direction no other integration file writes. The vector legs here walk the approximate index,
103- * which the files sharing this database crowd with `[1, 0, …]` rows; tied at distance zero with
104- * this file's chunks, those can exhaust the walk's tuple cap before it reaches them. Inside the
105- * first 512 dimensions, the only ones the candidate projection keeps.
102+ * A direction no other integration file writes, so no row of theirs ties with this file's chunks.
103+ * Inside the first 512 dimensions, the only ones the candidate projection keeps.
106104 */
107105const vector = Array . from ( { length : 1536 } , ( _ , index ) => ( index === 511 ? 1 : 0 ) )
108106const queryVector = {
@@ -173,12 +171,17 @@ const keywordIds = async () =>
173171 . map ( ( row ) => row . id )
174172 . sort ( )
175173
174+ /**
175+ * Ranked exactly on the row, under the same visibility predicate the graph walk applies. The walk
176+ * is approximate: in a graph the other files sharing this database crowd with degenerate vectors,
177+ * a chunk can be pruned from every neighbour list and never be reached, however far the walk goes.
178+ */
176179const vectorIds = async ( ) =>
177180 (
178181 await handleVectorOnlySearch ( {
179182 ...searchInputs ( ) ,
180183 distanceThreshold : 2 ,
181- permitted : { kind : 'unbounded' , broad : true } ,
184+ permitted : { kind : 'unbounded' , broad : false } ,
182185 } )
183186 )
184187 . map ( ( row ) => row . id )
0 commit comments