File_search returns results from deleted files no longer linked to the vector store

Issue description

I’m encountering an issue where file_search results include entries from files that have already been deleted and disconnected from the vector store.

Details

I have a vector store:

vector_store_id: vs_68f856a359e0819181fd825fe4e77eb3

When running a file_search, I receive results like the following:

[4] => Array
(
    [file_id] => file-4qztCVCm3D3doi5sQF6jMn
    [filename] => dataset_786_c1_20251027.json
    [score] => 0.5252
    [text] => price.0: 0
shipping_weight: 11750
sizex: 47
sizey: 40
sizez: 63
sku: 21335
...
)

However:

  • file-4qztCVCm3D3doi5sQF6jMn no longer exists (it was deleted from my account),

  • It was explicitly unlinked from the vector store before deletion,

  • Yet it still appears in search results for that vector store.

Expected behavior

Deleted (or unlinked) files should not appear in file_search results for an existing vector store.

What I’ve verified

  • The vector store itself (vs_68f856a359e0819181fd825fe4e77eb3) still exists.

  • The old file ID returns a 404 when queried.

  • I’ve re-indexed and even re-uploaded new files, but stale search results persist.

  • The issue seems to be cache or stale index related.

Environment

  • API: OpenAI Realtime + Vector Stores

  • Endpoint: file_search

  • Date observed: November 2025

  • Language: PHP backend calling the OpenAI API directly

Question

Is there a known issue or delay in index cleanup after deleting/unlinking files from a vector store?
If not, how can we force a reindex or purge stale embeddings that refer to deleted files?

Status: “Known” - as evidenced here where I describe that a week ago:

OpenAI status: unknown, uncaring, unresponsive (a re-compilation of 100 forum topics backing my assertion would also resolve nothing.)

You can add that complete corruption and failure of listings:

There’s an intolerable amount of complete outages and ongoing issues going back months. You would not expose your reputation by exposing your clients to OpenAI’s vector stores.

Changes may be related to data residency, project scoping, database propagation. You can ensure that one project API key is doing all the vector store interactions, from creation, upload, and population, inference, through deletions and cleanup.

This sounds like it is connected to this issue:

If you run this endpoint: https://platform.openai.com/docs/api-reference/vector-stores-files/listFiles
I’ll bet you that the files in question are getting returned as “in_progress”

@_j is right that the whole vector store handling is worrysome and probably not worth the risk