Conversation
…tization and for overlong run ids
|
I'll fix CI failures and address comments from users with write access that start with 'DevinAI' or '@devin'.
Original prompt from Ayush
|
…tization and for overlong run ids
|
I'll fix CI failures and address comments from users with write access that start with 'DevinAI' or '@devin'.
Original prompt from Ayush
|
TL;DR
Two samples can no longer share one
x-session-idafter #100: sanitized sample ids carry a hash of the original, and an overlong run id hashes the full identity instead of falling back to the run-level id.What changed?
buildRequestSessionIdappends a 12-hex sha256 of the original sample id whenever sanitization changed it, soq/17,q.17,q 17, andq-17map to four different ids. Sample ids already in[A-Za-z0-9_-]are unchanged (wf.0.gpqa-42).<run>.<epoch>.leaves no room for any sample segment, the result is<run head>.<32-hex sha256 of run.epoch.sample>capped at 256 chars, instead of returning<run>for every sample.Why?
Devin Review and Perry flagged both on the openrouter-web subtree sync (OpenRouterTeam/openrouter-web#44957): the sanitizer is not injective, and the
budget <= 0branch silently reproduced the one-session-per-run shape that #100 fixes.How to test
Expected: four distinct values, the last one exactly
wf.1.q-17.Reviewer focus
<run>.<epoch>.<sample>shape the Datadog pipeline in openrouter-web parses.startsWith(session_id, '<run>.')will not roll those up. Run ids are capped at 128 in schedule-utils today, so this branch is unreachable for Temporal-launched runs.Checklist
Link to Devin session: https://openrouter.devinenterprise.com/sessions/b91ee8adb7514c2fa3f15e8dfa1dfd1b
Open in Devin Desktop: https://openrouter.devinenterprise.com/desktop/session/b91ee8adb7514c2fa3f15e8dfa1dfd1b?variant=devin
Requested by: @ayush-or