Stable Document IDs

  • Document IDs are now stable across re-ingestion: re-indexing the same bucket object, or re-uploading a file with the same filename via text/file upload, updates the same document_id instead of minting a new one. IDs you have stored keep working; deleting a document and re-indexing the same source restores the same ID.

Zero-Downtime Overwrites

  • Overwrites no longer take documents offline: overwrite_existing: true now builds the new version alongside the live one and atomically swaps it in the moment it completes. The previous version keeps serving search results through the entire rebuild, and a failed rebuild leaves the previous version untouched instead of losing the document. This applies to every indexing endpoint and to sync’s automatic re-indexing. The API is unchanged: same endpoints, same flag.
  • Rebuilds are observable: document listings now include a status field: ready, updating (a rebuild is running; the previous version is still being served), or failed (indexing failed; the previous version is still being served if one exists).
© 2026 Captain