mirror of
https://github.com/openobserve/openobserve.git
synced 2026-11-05 00:09:35 +00:00
## Summary - TestDino quota (~75k/month) was being consumed at ~4x rate because each failing test uploads one result entry per retry attempt (original + 3 retries = 4 entries per test) - This PR adds deduplication: if all retry results share the same `status` and error first-line, only the final attempt is uploaded - Retries with differing status or error message are preserved in full — they carry real diagnostic signal (e.g. a test that times out then fails with a different error) ## How it works ``` getErrorFingerprint(result) → first line of error.message (stable across retries) allIdentical = every retry has same status AND same error fingerprint → true: upload only results[last] (strips ~3 entries per test) → false: upload all results as before (keeps diagnostic data) ``` ## Expected quota impact Based on last month's data: ~65k attempts → ~16k (estimated ~75% reduction for OSS Portal alone) ## Test plan - [ ] Trigger a CI run that has failures with retries — confirm the workflow log shows `stripped N identical retry results` - [ ] Trigger a run with a genuinely flaky/environment-variable failure — confirm all retries are preserved in TestDino 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>