向量库不是权限事实

搜索向量可以帮助召回候选,但它不应该决定一个租户是否能看到资源。权限和可见性仍然由数据库事实和业务查询决定,向量库只是检索加速层。

这条边界很重要:如果把“向量存在”误当成“资源可见”,一次迟到的删除、一次租户范围错误或一次索引漂移,就可能变成权限问题。

发布不是循环写入

InterAPI 的生产发布采用不可变 release。发布前先生成 manifest,经过 dry-run、评测和必要的 canary,再把数据库变化和向量变化拆成可追踪的 Outbox 工作。旧文档需要 tombstone,最终通过 reconcile 回读数据库和向量库,确认没有开放队列、失败任务或内容漂移。

这比“遍历所有记录然后直接 upsert”多了几个步骤,却换来了可重试、可对账和可回滚的边界。任何一次发布都应该能回答:这一批资源属于哪个 release,哪些文档已经送达,哪些文档仍需核对。

评测要早于扩容

搜索质量改善先看可复现查询、召回链路和权限过滤,再决定是否增加数据。密集召回、词法验证、重排、强匹配和多样性应该分开统计;向量数量增加,并不自动意味着检索质量提升。

生产系统需要的是一条发布和评测闭环,而不是一个“写入成功”的单点指标。