fix: /search default index aligned to ethereal_workers_v1

The /search hybrid endpoint defaulted to index workers_500k_v1 (50K chunks, a
different worker set) while defaulting filter_dataset to ethereal_workers (10K SQL
rows). Same worker_id → different person in each, so the SQL state filter and the
vector rerank referred to different people: state='IL' surfaced a KY worker flagged
sql_verified:true. Aligned the default index to ethereal_workers_v1 (10K chunks, same
id-space as the SQL table). Verified: state='IL' now returns only IL workers.

Takes effect on next mcp-server restart. Sibling paths /match and the search_workers
tool have the same workers_500k_v1↔ethereal_workers misalignment (not touched here).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Claw 2026-06-30 22:42:14 -05:00
parent ab1f12296d
commit 423400e843

View File

@ -519,7 +519,12 @@ async function main() {
}
}
const hybridRes = await api("POST", "/vectors/hybrid", {
question: b.question, index_name: b.index || "workers_500k_v1",
// Default index MUST share an id-space with the default filter_dataset.
// ethereal_workers (10K SQL rows) aligns with ethereal_workers_v1 (10K
// chunks). The old default workers_500k_v1 (50K chunks, different worker set)
// returned wrong-state workers flagged sql_verified:true — e.g. state='IL'
// surfaced a KY worker, because worker_id 1768 is a different person in each.
question: b.question, index_name: b.index || "ethereal_workers_v1",
sql_filter: filter, filter_dataset: b.dataset || "ethereal_workers",
id_column: b.id_column || "worker_id", top_k: b.top_k || 5, generate: b.generate !== false,
use_playbook_memory: b.use_playbook_memory !== false,