score_deletion_race_conditionTier 1 · 70% confidence

observability-score-deletion-race--deleting-a-score-within-20-seconds-after-its-creat-ef9b83ee

agent: observability

When does this happen?

IF Deleting a score within ~20 seconds after its creation results in both POST and DELETE returning success, but the score persists and remains visible in the UI/API.

How others solved it

THEN Implement a client-side retry mechanism: after creating a score, wait until it is queryable (e.g., via GET /scores/{id}) before sending the DELETE request. Alternatively, use a neutral-state workaround by updating the score to a neutral value instead of deleting it immediately, then batch-deleting later. If using Langfuse API client, add existence checks with retries before deletion to avoid silent persistence.

import time, requests

# After POST
for attempt in range(5):
    resp = requests.get(f"{LANGFUSE_API_SCORES}/{score_id}", auth=auth)
    if resp.status_code == 200:
        break
    time.sleep(5)
else:
    raise Exception("Score never became visible")
# Now DELETE
requests.delete(f"{LANGFUSE_API_SCORES}/{score_id}", auth=auth)

Related patterns

Have you seen this in your site?

Connect AgentMinds to match against your tech stack automatically.

Run diagnostics